Adding multiple schemas to a workspace

We use Oracle Applications for our ERP, and I've just had our DBA set up APEX. One of the first things I noticed, however, was that the object browser only shows the schema(s) that have been explicitly assigned to the workspace. I found in the help how to add another schema to the list (have the DBA log in to the admin page and create the new link), but it looked like there wasn't any support for adding multiple schemas at once. Since the applications use a lot of schemas (AP, AR, INV, PO, ONT, WSH, etc., etc.), it'd be great if I didn't have to have him doing all of this manually.
Suggestions?
Or do we just need to do it, secure in the knowledge that we should only have to do it a few times?
(Also, is there any way to have the object browser filter down to tables/views that the APEX user has grants on?)
Thanks,
-David

Peter,
Thanks, that gave us what we wanted. Though now I'm not sure if it's what we should actually have. After adding the schemas, we found that we could manipulate anything we wanted in those schemas (create tables, view and update data, etc.) without having to do explicit grants. This is an obvious security issue...
My first thought is to remove almost all of the schemas and create views in the APEX schema to the other tables that we're going to need, but I'm concerned that doing so will be a development and maintenance headache as our toolbase expands to include more and more of the Oracle Application tables. Is there a better solution that I'm not aware of?
-David

Similar Messages

  • Multiple schema for a  (workspace) user

    If I use XE and create a database user from the homepage/admin as system I get ( compared to an HTMLDB2.0 instance in an SE/EE-environment) a user with its workspace (the admin for this workspace). This user has his own schema and if he is logged in he can create application-users (HTMLDB-Users in this workspace).
    (1) But how can I add more than one schema to this workspace?
    I create a user TEST as system. got user TEST with schema TEST.
    I have a database schema (only database schema) DEMO and want assign this so that the (htmldb)User TEST can create applications based on the schema DEMO (thats possible in HMLDB2.0 with SE/EE).

    Thanks dietmar -
    I believed thats an restriction - but want to get an official statment from development... -> SCOTT?
    I know the basic workaround and then have to consider any changes in the mixed structure.
    It makes sense to have data separated in different schemas and have only one workspace for bundling different applications, because of same securityInterface,
    UserInterfaceDefaults... (easy delivering for departments, customers).
    If the restriction exist (for newbies makes it easier to understand htmldb&oracle),
    we have to accept.

  • Add multiple schemas in one workspace

    Hi all,
    In my apex application i have to add to schemas in one worksapce and hav to right sql query by using objects of both the schemas...
    can anyony tell me how can i achieve this functionality in apex...
    Thanks,
    Shruti

    Shruti,
    You can have as many schemas associated with the workspace as desired. However, there can only be one parsing schema for each application in the workspace. Are the schemas in the same DB?
    If so, you can just grant all the privileges needed on the other schemas to the parsing schema. Then the parsing schema will have rights to all objects needed in the other schemas.
    If they are not in the same DB, then you can use db links.
    Keith Malay
    www.sds-cg.com

  • Using Multiple Schemas in one Application

    Is it possible to have multiple schemas from the same database in one applicaiton. In APEX we have added multiple schemas to our workspace but when we create a form or report only one schema seems to be available.

    Miroslav wrote:
    Your application has a parsing schema. All other schemas have to give appropriate grants to it to be available to your application.Miroslay is right, if you use the INTERNAL workspace to add additional schemas to a workspace, APEX does not take care of any grants between the schemas. APEX can not know how or if you might want the schemas to interact with one another. All this does is gives the workspace the ability to utilise that schema, such as adding it as parsing schema to any applications in the workspace.
    You can switch to the secondary schema in SQL Workshop and add grants from there, e.g.
    grant select on SECONDARY_SCHEMA.MY_TABLE to PARSING_SCHEMA;

  • Adding "data owner" schema to apex workspace provided unexpected results

    Recently I added a "data owner" schema to an existing apex workspace thinking it was a god idea.
    As stated...
    the schema that I added was a "data owner" schema and I was only suppose to have select capability for apex reporting.
    After the schema was added to the workspace I felt I had owner privs on all of the schema objects and
    could create objects and insert and update table records.
    Needless to say... this is something that I do not want to do with tihs particular "data owner" schema BUT...
    this is something that I feel is really good.
    i.e. The Object Browser and Model are some excellent examples of the apex tool. :)I would just like to remove/block the insert/update capabilty against this particular schema from my workspace.
    Any ideas on how to remove the update capability from my workspace or is it even possible?thanks in advance... :)
    v/r
    RJones

    Ah, thanks I didn't see that section before.
    I put the procedure details in the box; declaring the variables and the code to determine the context values
    Logged in as a user and again as the schema owner (both with admin privs) I get this error back:
    ORA-01031: insufficient privileges
    Error ERR-1181 Unable to set VPD security context on page show.
    This is my procedure:
    Declare
    V_COUNT NUMBER;
    V_PRJ_USERNAME VARCHAR2(30);
    V_USERID NUMBER;
    V_PRJROLE VARCHAR2(30);
    BEGIN
    -- sets user name
    V_PRJ_USERNAME := v('APP_USER');
    V_PRJROLE := 'NO_ACCESS';
    BEGIN
    --gets user id from staff table
    SELECT staf_id
    INTO V_USERID
    FROM PRJ_STAFF
    WHERE staff_oracle_name = V_PRJ_USERNAME;
    Select count(*)
    into v_count
    FROM DBA_ROLE_PRIVS
    WHERE GRANTEE = V_PRJ_USERNAME
    AND GRANTED_ROLE='PRJJ_GUEST_RL';
    if v_count > 0 then
    V_PRJROLE := 'GUEST';
    end if;
    Select count(*)
    into v_count
    FROM DBA_ROLE_PRIVS
    WHERE GRANTEE = V_PRJ_USERNAME
    AND GRANTED_ROLE='PRJJ_DEVELOPER_RL' ;
    if v_count > 0 then
    V_PRJROLE := 'DEVELOPER';
    end if;
    Select count(*)
    into v_count
    FROM DBA_ROLE_PRIVS
    WHERE GRANTEE = V_PRJ_USERNAME
    AND GRANTED_ROLE='PRJJ_MANAGER_RL' ;
    if v_count > 0 then
    V_PRJROLE := 'MANAGER';
    end if;
    Select count(*)
    into v_count
    FROM DBA_ROLE_PRIVS
    WHERE GRANTEE = V_PRJ_USERNAME
    AND GRANTED_ROLE='PRJJ_ADMIN_RL' ;
    if v_count > 0 then
    V_PRJROLE := 'ADMIN';
    end if;
    DBMS_SESSION.SET_CONTEXT('PRJ_SEC_PKG','USER_NAME','V_PRJ_USERNAME');
    DBMS_SESSION.SET_CONTEXT('PRJ_SEC_PKG','USER_ID','V_USERID');
    DBMS_SESSION.SET_CONTEXT('PRJ_SEC_PKG','USER_ROLE','V_PRJROLE');
    END;
    END;
    Is there something wrong with my procedure?
    Edited by: JodyMorin on Mar 27, 2009 6:23 AM

  • Error when adding a schema to an existing workspace

    I am trying to add an existing schema to my workspace, and am getting ORA-20001: Error with: GRANT EXECUTE ON DBMS_RLS TO BILLING ORA-01031: insufficient privileges. I tried logging in as sys and granting that privilege, and it worked. However, going back to the workspace, I still did not see the new schema listed.
    The user and tables have all been created in the database. The BILLING schema showed up in the available schemas to add to the workspace. I have also tried adding a new schema to the workspace. The BILLING2 schema was created, but I received the same error when it tried to add it to the workspace.
    Is there a grant or user that could be missing? I am using HTMLDB 2.0.
    Thanks!

    These are the current privs for that user:
    ALTER DATABASE
    ALTER SESSION
    ALTER USER
    CREATE ANY CONTEXT
    CREATE ANY DIRECTORY
    CREATE CLUSTER
    CREATE DATABASE LINK
    CREATE DIMENSION
    CREATE INDEXTYPE
    CREATE JOB
    CREATE LIBRARY
    CREATE MATERIALIZED VIEW
    CREATE OPERATOR
    CREATE PROCEDURE
    CREATE PUBLIC SYNONYM
    CREATE ROLE
    CREATE SEQUENCE
    CREATE SYNONYM
    CREATE TABLE
    CREATE TABLESPACE
    CREATE TRIGGER
    CREATE TYPE
    CREATE USER
    CREATE VIEW
    DROP ANY DIRECTORY
    DROP PUBLIC SYNONYM
    DROP TABLESPACE
    DROP USER
    EXECUTE ANY PROCEDURE
    SELECT ANY DICTIONARY
    SELECT ANY TABLE
    UNLIMITED TABLESPACE

  • Multiple schemas assigned to a workspace

    I'm trying to write an app that accesses other schemas besides the apex user I'm using. I can't figure out how to assign more than one schema to a workspace. All help is sincerely appreciated
    Rich

    you don't have to assign other schemas ... but you can access them.
    Suppose you have default schema X (x is user that own that schema) in worspace, tableA is in schema A and tableB is in schema B.
    Then you login as user A (that own schema A) and exceute:
    grant select on tableA to X;Then you login as user B(that own schema B) and exceute:
    grant select on tableB to X;Now you can as user X (whose schema is default in your workspace) select data from both tables: tableA and tableB as well.
    Login as X user and execute:
    select * from a.tableA;
    select * from b.tableB;If you want to ommit that schema prefix in front of table names, you can as user X execute:
    create synonym tableA on a.tableA;
    create synonym tableB on a.tableB;Now you can execute query like:
    select * from tableA;
    select * from tableB;but thoise object are not in schema X but in scema A and B...
    Hope this helps! The best way for other questions in this subject to place in other forum...

  • One application with Multiple schemas- common application frame work

    Hi All,
    I am trying setup a common application frame work in apex. Please help me.
    How to achieve this.
    Creation of one application attached to different schemas at run time. So that my application maintaince is going to be easy instated of creating copies of same application.
    More details:
    1. I have one application with 100 pages pointing to a schema dev_common in one workspace APP_COMMON. I have 50 schemas with same structure of dev_common schema with different set of data ( because of large amount of data).
    So I want to create one application attached to different schemas.
    2. And another thing is I have 100 users, the user can work on 1 or multiple schemas ( I mean same application with different schemas attached)
    Any help much appreciated.
    Thanks,

    Thank you for the reply.
    >> b) I think you have to give access rights for the dev_common and app_common to all users.
    Dev_common schema is a kind of placeholder. I have 50 schemas same as dev_common because of different business requirements but the front end is same for all 50 schemas. How can we create one application used for 50 schemas instead of creating 50 applications and 50 workspaces.
    Please help me.

  • Help With Multiple Schemas In Multiple Environments

    Dear Oracle Forum:
    We have a bit of controversy around the office and I was hoping we could get some expert input to get us on the right track.
    For the purposes of this discussion, we have two machines, development and production. Currently, on each machine, we have one database with multiple schemas, say, one for sales data and another for inventory. The sales data has maybe 200 tables and the inventory has another 50. About 12 times a year, once a month, we have a release and move code from dev to prod. The database is accessed by several hundred Pro*C and Pro*Cobol programs for online transaction processing.
    The problem comes up when we need to have multiple development environments. If I need to work on something for May that requires the customer address field to be 50 characters and somebody else is working on something for July that requires the customer address field to be 100 characters, we can’t both function in the same schema. We have a method of configuring running programs to attach to a given schema/database. Currently, everything connects to the same place. We were told that we should not have the programs running as the owners of the schemas for some reason so we set up additional users. The SALES schema is accessed with the connect string: SALES_USER/[email protected]. (I don’t know where we got dot world from but that is not the current discussion.)
    One of the guys said that we should have 12 copies of the database running, which is kind of painful to think about in my opinion. Oracle is not a lightweight product and there are any number of ancillary processes that would have to be duplicated 12 times.
    My recommendation is that we have 12 schemas each for sales and inventory with 12 users each to access them. We would have something like JAN_SALES_USER, FEB_SALES_USER, etc. Each user would have synonyms set up for each of the tables it is interested in. When my program connects as MAY_SALES_USER, I could select from the customer table and I would get my 50 character address field. When the other user connects as JUL_SALES_USER, he would get his 100 character address field. Both of us would not know anything different.
    Another idea that came up is to have a logon trigger that would set the current schema for that user to the appropriate base schema. When JUL_SALES_USER logs in, the current schema would be set to JUL_SALES, etc. This would simplify things by allowing us to avoid having something like 2400 synonyms to maintain (which could be automated without too much difficulty) but it would complicate things by requiring a trigger.
    There are probably other ways to go about this we have not considered as yet. Any input you can give will be appreciated.
    Regards,
    /Bob Bryan

    Hans Forbrich wrote:
    I'd rather see you with 12 schemas than with 12 databases. Unless you have lots of CPUs to spare ... and lots of cash to pay for those extra CPU licenses.
    Then again, I'd take it one step further and ask to investigate the base design. There should be little reason to change the schema based on time. Indeed, from what little I know of your app, I'd have to ask whether adding a 'date' column and appropriate views or properly coded SQL statements might simplify things. Interesting. If we were to have one big Customer table with views for each month, how would we handle the case where the May people have to see 50 character address and July have to see a 100 character address field. I guess we could have MAY_ADDRESS VARCHAR2(50) and JULY_ADDRESS VARCHAR2(100) and take care to make sure that people connecting as May can only see the May columns, etc. This is simpler than multiple schemas?
    I may have overly simplified things in my effort to get something down that would not require too much explanation. The big thing is that multiple people are doing development and they have to be independent of each other. If we were to drop a column for July, the May people will have trouble compiling if we don’t keep things separate. It is not a case of making the data available. The data in development is something we cook up to allow us to test. The other part is the code we compile now will be released to production one of these times. In production, there is only a need for one database.
    We are moving from another database product where multiple databases are effectively different sets of files. We have lots of disk space so multiple databases were no problem. Oracle is such a powerful product; I can’t believe there is not some way to set up something similar.

  • Schema Assignment to WORKSPACE

    Hi,
    I developed Application in one of the custom Schema.
    WORSPACE : DEMOSPACE
    SCHEMA : DEMO
    Can i assign one more existing schema to "DEMOSPACE" like OE,SCOTT,HR..
    Best Regards
    Perumal Swamy.R

    Actualy while adding schema the process is
    completed.Eh? You are one confusing person. So you are already able to successfully associate another schema to your workspace?! So why in the world are we talking about that part? Why not focus on your real problem.
    Creation Method: As an application on a database
    table
    Table / View Owner DEMO (LOV Shows only DEMO
    Schema which is the Workspace owner).Clearly, you are using HTML DB Version 1.6 (that is something else you should mention up-front to avoid confusion)
    That Schema dropdown on that page is supposed to show you all the schemas associated with that workspace.
    If it does not, maybe your userid is restricted to access only subset of all schemas available to the workspace.
    Log in as a workspace admin and go to
    Home>HTML DB Workspace Administration>Manage HTML DB Users>Existing Users>Edit User for the userid that you are logging in as.
    Make sure that the "Accessible Schemas (null for all)" box is blank. This will ensure that the user will have be able to build applications using any of the schemas available to the workspace.

  • Invalid parsing schema for current workspace ID

    I have an application that captures different SQL statements (they make use of DB links) and dynamically executes them on demand.
    I use apex collections to get the result rows for the SQL and use them to both query on the UI as well as send out emails using the returned data. This is all OK and works fine.
    I then added another feature to my application where I support the scheduling of the running the SQL / sending out of the emails. It uses the same logic as I use from within the application but it fails with the following error ...
    Invalid parsing schema for current workspace ID
    when the SQL is being used to populate the collection.
    The scheduling is done using the apex plsql job scheduling package. It's as though the context that the job is running in is different from that of the application I created. The strange thing is that it can still see my tables that I created as the queries return data from my tables but for some reason seems to have an issue with the use of apex collections.
    Any ideas or suggestions would be greatly appreciated.

    Scott,
    Today the error mentioned in the last post occurred 3 times - the highest number in a single day yet. Also, to add to the dilemma, a new one occurred:
    ORA-20104: create_collection_from_query_b Error:ORA-20101: Application collection exists
    Knowing that the create collection process is called from a post authentication process I don't see how that the collection could exist for that session... Any ideas?
    Regards,
    Dan
    http://danielmcghan.us
    http://sourceforge.net/projects/tapigen

  • Multiple Schema Access

    Greetings,
    I have a default schema which was created when the workspace was created. In addition, I added another schema within the Manage Schema to Workspace Assignments area in side the HTMLDB Administrator area. I'm able to go into the SQL Workshop->Tables, choose from my 2 schemas mapped to my workspace, and see the tables that I have in both schemas. The problem I'm having is when I wish to use a wizard to create a form based on a table or view. The only table I'm able to work with is tables that were created in the default schema as I'm not allowed to change schemas through this wizard. Is there a way to do this or am I missing something. Does this mean I'm not able to work within this other schema and it's tables?
    Thanks in Advance,
    Clifford Moon
    UTPA Webmaster

    Hi Sergio,
    Thanks for the prompt response. I havent had a chance to try the second option (truthfully, i'm not exactly sure how to do that at this point even..). I did however go into the Administrator Account, Went to Schema's by Workspace, and chose my second schema as the default schema for my workspace. THis makes no difference in that wizard. It still shows only the default (one that was provisioned when the account was created) schema. (Form on Table Wizard)
    -- Thanks in Advance
    -- Cliff Moon
    -- UTPA Webmaster

  • Multiple schema used on apex?

    hi all,
    i posted a thread here need some comments or suggestions for database designing
    just wanted to ask comments from APEX developers as well. is it recommended to have more than one schema if i use Oracle Application Express as front-end tool?
    considering that having multiple schema means multiple workspace. then there will be features that i won't be able to use such as a single sign on for all applications in this case?
    what i want to know is are there any other ways to have a user sign in to one application and be authenticated in all applications despite that those applications are on different workspaces?
    thanks
    allen

    Allen,
    One Workspace doesn't mean one schema. You can have multiple schemas assigned
    to one workspace.
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    -------------------------------------------------------------------

  • Permit access withing schemas in single workspace?

    Hi All,
    I would like to provide access to all my schemas within one workspace.
    basically, SCHEMA "A" and "B" would have access to each other's objects in single workspace.
    Can someone detail how to do this?
    I tried using MANAGE WORKSPACE TO SCHEMA ASSIGNMENTS" and could not find a way to do this
    thanks

    Hello,
    You can assign multiple schmeas to a workspace. Please read [url http://docs.oracle.com/cd/E23903_01/doc/doc.41/e21678/adm_mg_wrkspc.htm#AEADM245]Managing Workspace to Schema Assignments
    basically, SCHEMA "A" and "B" would have access to each other's objects in single workspace.If you want to access Schema-B objects from Schema-A, then you have to grant respective privilege to Schema-A from Schema-B. This is not specific to APEX.
    Regards,
    Hari

  • *Help Needed* Adding multiple emails/mailing list in the email subscription

    Help Needed
    Hi,
    Can someone help me in adding multiple email address/mailing list in the email subscription for interactive reports in Apex 4.
    pls mail me at [email protected]
    Regards,
    Sunny

    The doc does not mention a separator for the email addresses because we only support one email address per subscription. I have logged a task for our next release to look at expanding it and allowing multiple.
    -- Sharon

Maybe you are looking for