ADF BC: Choosing between two identical DB schemas on application startup

Hi,
We want to provide users with capability to choose between two identical db schema.
Anu idea how to do this ?

Cvele wrote:
Thanks a lot ! My pleasure.
One question: datasource name entered by the user (on the login form) is a JDBCDataSource property value for the Application module Configuration (which connect trough JDBC DataSource), correct ?Yes.
If so, then, we still must define two different sets of App Module Configurations, one for each DB schema, correct ?No. I'm not suggesting that you implement your UI like the demo that I forwarded. It might not be appropriate for your user to type in the datasource name, but the same code would be required to make the datasource name change work. Rather than getting the datasource name from the HTTPRequest and setting on the session where the custom sesison cookie impl and env info provider access you, for your solution that datasource value might come from some other place that the end-user doesn't directly type in.
Otherwise:
1. we cannot have two different datasource names, correct ?The example I forwarded should allow you to enter different JNDI names, so those would be different datasources.
2. in case of one Configuration – what is a way to define (at deployment time) username/password for each of those two schemas ? Is this correct ?The username/password information is encapsulated inside the Java EE container when you define the datasource. The application doesn't know that information and doesn't have to provide it when you are using a JDBC datasource by JNDI name.
On the other hand, what confuses me, is a fact that you say:
“You wouldn't use different configurations” And really, you example attached to me have just one App module Configuration (datasource name = jdbc/scottDS), which connect through dataSource.
Wondering what a user can enter as datasource name, except jdbc/scottDS ?I forget whether in my example I configured another datasource, but the user could enter the name of any available JNDI name for the datasource on the Java EE container.
Again, I don't suggest necessarily that you let the end-user type it in, that was just how I built the demo since I quickly evolved it from the other dynamic credentials demo that accepted the username and password from the end-user.

Similar Messages

  • Problem with ORA-06502 when exp/imp between two identical versions

    Hi
    I have two identical systems, one system that I develop on and
    the test system. The two systems have the same version of the
    Portal. When I export and then import the application from the
    systems I get a error message on the test system.
    ORA-06502: PL/SQL: numeric or value error: character to number
    conversion error (WWV-11230)
    This error does not appear on the developing system.
    The application I have is a form on a table, and I have some
    buttons with PL/SQL handels on them. I tried to remove this code
    and export with no luck.
    Please help.
    The system:
    Windows NT
    Oracle Portal 3.0.8.9.8
    Thanks
    Jvrgen Swensen

    Could you pls confirm : Have you exported & Imported the shared
    components used by that form?
    If you are not too worried about the templates/fonts then try
    this:
    Click on "Edit" link against that form and click "OK".
    Thanx,
    Chetan.

  • Can I set FIREFOX to choose between two different homepages or websites?

    I know that Firefox will open any number of web sites when you start it. I want to have the ability to choose between opening a preset number of sites and just one. For instance at the beginning of the day I want all my banking sites available when I start. Later in the day I want to open only say, Google. Is there any way to have Firefox do that?

    Morning Coffee: https://addons.mozilla.org/firefox/addon/2677

  • Different optimizer paths between two identical databases

    Hello!
    I'm running into a problem with a query that is pretty amazing.  I have two different databases that I work with - Development and Acceptance.  According to my DBA, they are absolutely identical in every respect - including data.  Both of them gather statistics every night at the same time.
    On development my query executes beautifully - 0.6 seconds.
    On acceptance the query executes in 60 - 70 seconds.
    They both evalute completely differently thought an explain plan - obviously from the difference in performance.  Here are the two explain plans for the query...
    GOOD
    explain plan for
    select e.employee_name,
           e.worker_id       id,
           e.vac_ent         "Vac<BR>Ent",
           e.vac_taken       "Vac<BR>Taken",
           e.vac_presched    "Vac<BR>PreSched",
           e.vac_remain      "Vac<BR>Remain",
           e.banked_hours    "Banked<BR>Hours",
           e.banked_taken    "Banked<BR>Hours<BR>Taken",
           e.banked_presched "Banked<BR>Hours<BR>Presched",
           e.banked_remain   "Banked<BR>Hours<BR>Remain",
           e.edo_earned      "EDO<BR>Hours<BR>Earned",
           e.edo_taken       "EDO<BR>Hours<BR>Taken",
           e.edo_presched    "EDO<BR>Hours<BR>Presched",
           e.edo_remain      "EDO<BR>Hours<BR>Remain",
           e.ado_earned      "ADO<BR>Hours<BR>Earned",
           e.ado_taken       "ADO<BR>Hours<BR>Taken",
           e.ado_presched    "ADO<BR>Hours<BR>Presched",
           e.ado_remain      "ADO<BR>Hours<BR>Remain"
      from tas.benefit_summary_curr_year_v e /* USESYSDATEFORSECURITY */
    where 1 = 1
       and (e.worker_id in
           (select worker_id
               from worker_cost_centre_v ecc2
              where ecc2.cost_centre = '100033'
                and ((ecc2.effective_date <= dtutil.todate('2013/10/08') and
                    ecc2.expiration_date >= dtutil.todate('2013/10/08')) or
                    (ecc2.effective_date <= dtutil.todate('2013/11/08') and
                    ecc2.expiration_date >= dtutil.todate('2013/11/08')) or
                    (ecc2.effective_date >= dtutil.todate('2013/10/08') and
                    ecc2.expiration_date <= dtutil.todate('2013/11/08')))))
       and pkg_taw_security.user_worker_access('CA17062',
                                               'TIMEKEEPER',
                                               e.worker_id,
                                               trunc(sysdate)) = 1
    union
    select 'ZZZTOTALS',
           sum(e.vac_ent),
           sum(e.vac_taken),
           sum(e.vac_presched),
           sum(vac_remain),
           sum(e.banked_hours),
           sum(e.banked_taken),
           sum(e.banked_presched),
           sum(e.banked_remain),
           sum(e.edo_earned),
           sum(e.edo_taken),
           sum(e.edo_presched),
           sum(e.edo_remain),
           sum(e.ado_earned),
           sum(e.ado_taken),
           sum(e.ado_presched),
           sum(e.ado_remain)
      from tas.benefit_summary_curr_year_v e
    where 1 = 1
       and (e.worker_id in
           (select worker_id
               from worker_cost_centre_v ecc2
              where ecc2.cost_centre = '100033'
                and ((ecc2.effective_date <= dtutil.todate('2013/10/08') and
                    ecc2.expiration_date >= dtutil.todate('2013/10/08')) or
                    (ecc2.effective_date <= dtutil.todate('2013/11/08') and
                    ecc2.expiration_date >= dtutil.todate('2013/11/08')) or
                    (ecc2.effective_date >= dtutil.todate('2013/10/08') and
                    ecc2.expiration_date <= dtutil.todate('2013/11/08')))))
       and pkg_taw_security.user_worker_access('CA17062',
                                               'TIMEKEEPER',
                                               e.worker_id,
                                               trunc(sysdate)) = 1
    order by 1;
    select * from table(dbms_xplan.display);
    GOOD PLAN_TABLE_OUTPUT
    Plan hash value: 432971565
    | Id  | Operation                            | Name                   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT                     |                        |     2 |   274 |    14  (43)| 00:00:01 |
    |   1 |  SORT UNIQUE                         |                        |     2 |   274 |    13  (70)| 00:00:01 |
    |   2 |   UNION-ALL                          |                        |       |       |            |          |
    |   3 |    HASH GROUP BY                     |                        |     1 |    66 |     6  (34)| 00:00:01 |
    |   4 |     NESTED LOOPS                     |                        |       |       |            |          |
    |   5 |      NESTED LOOPS                    |                        |     1 |    66 |     4   (0)| 00:00:01 |
    |   6 |       NESTED LOOPS                   |                        |     1 |    44 |     3   (0)| 00:00:01 |
    |*  7 |        TABLE ACCESS BY INDEX ROWID   | WORKER_COST_CENTRE_TBL |     1 |    29 |     2   (0)| 00:00:01 |
    |*  8 |         INDEX RANGE SCAN             | WORKER_CC_CC_IDX       |    29 |       |     1   (0)| 00:00:01 |
    |*  9 |        INDEX RANGE SCAN              | BENEFIT_IND            |     1 |    15 |     1   (0)| 00:00:01 |
    |* 10 |       INDEX UNIQUE SCAN              | WORKER_PK              |     1 |       |     1   (0)| 00:00:01 |
    |  11 |      TABLE ACCESS BY INDEX ROWID     | WORKER_TBL             |     1 |    22 |     1   (0)| 00:00:01 |
    |  12 |    SORT AGGREGATE                    |                        |     1 |   208 |     7  (43)| 00:00:01 |
    |  13 |     VIEW                             | VM_NWVW_0              |     1 |   208 |     6  (34)| 00:00:01 |
    |  14 |      HASH GROUP BY                   |                        |     1 |    66 |     6  (34)| 00:00:01 |
    |  15 |       NESTED LOOPS                   |                        |       |       |            |          |
    |  16 |        NESTED LOOPS                  |                        |     1 |    66 |     5  (20)| 00:00:01 |
    |  17 |         NESTED LOOPS                 |                        |     1 |    44 |     4  (25)| 00:00:01 |
    |  18 |          SORT UNIQUE                 |                        |     1 |    29 |     2   (0)| 00:00:01 |
    |* 19 |           TABLE ACCESS BY INDEX ROWID| WORKER_COST_CENTRE_TBL |     1 |    29 |     2   (0)| 00:00:01 |
    |* 20 |            INDEX RANGE SCAN          | WORKER_CC_CC_IDX       |    29 |       |     1   (0)| 00:00:01 |
    |* 21 |          INDEX RANGE SCAN            | BENEFIT_IND            |     1 |    15 |     1   (0)| 00:00:01 |
    |* 22 |         INDEX UNIQUE SCAN            | WORKER_PK              |     1 |       |     1   (0)| 00:00:01 |
    |  23 |        TABLE ACCESS BY INDEX ROWID   | WORKER_TBL             |     1 |    22 |     1   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       7 - filter("X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/10/08') OR
                  "X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/11/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/11/08') OR
                  "X"."EFFECTIVE_DATE">="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE"<="DTUTIL"."TODATE"('2013/11/08'))
       8 - access("X"."COST_CENTRE"='100033')
       9 - access("X"."WORKER_ID"="X"."WORKER_ID")
           filter(TO_CHAR(INTERNAL_FUNCTION("X"."ACTIVITY_DATE"),'YYYY')>=TO_CHAR(SYSDATE@!,'YYYY') AND
                  "PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"X"."WORKER_ID",TRUNC(SYSDATE@!))=1)
      10 - access("X"."WORKER_ID"="X"."WORKER_ID")
      19 - filter("X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/10/08') OR
                  "X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/11/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/11/08') OR
                  "X"."EFFECTIVE_DATE">="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE"<="DTUTIL"."TODATE"('2013/11/08'))
      20 - access("X"."COST_CENTRE"='100033')
      21 - access("X"."WORKER_ID"="X"."WORKER_ID")
           filter(TO_CHAR(INTERNAL_FUNCTION("X"."ACTIVITY_DATE"),'YYYY')>=TO_CHAR(SYSDATE@!,'YYYY') AND
                  "PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"X"."WORKER_ID",TRUNC(SYSDATE@!))=1)
      22 - access("X"."WORKER_ID"="X"."WORKER_ID")
    The bad plan - based off the same query but run against a different database.
    Bad PLAN_TABLE_OUTPUT
    Plan hash value: 3742309457
    | Id  | Operation                        | Name                        | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT                 |                             |     4 |  1158 |       | 10065   (2)| 00:02:01 |
    |   1 |  SORT UNIQUE                     |                             |     4 |  1158 |       | 10064  (51)| 00:02:01 |
    |   2 |   UNION-ALL                      |                             |       |       |       |            |          |
    |*  3 |    HASH JOIN                     |                             |     3 |   915 |       |  5031   (2)| 00:01:01 |
    |   4 |     JOIN FILTER CREATE           | :BF0000                     |     1 |    29 |       |     2   (0)| 00:00:01 |
    |*  5 |      TABLE ACCESS BY INDEX ROWID | WORKER_COST_CENTRE_TBL      |     1 |    29 |       |     2   (0)| 00:00:01 |
    |*  6 |       INDEX RANGE SCAN           | WORKER_CC_CC_IDX            |    28 |       |       |     1   (0)| 00:00:01 |
    |*  7 |     VIEW                         | BENEFIT_SUMMARY_CURR_YEAR_V |   204K|    53M|       |  5027   (1)| 00:01:01 |
    |   8 |      HASH GROUP BY               |                             |   204K|  7403K|  9656K|  5027   (1)| 00:01:01 |
    |   9 |       JOIN FILTER USE            | :BF0000                     |   204K|  7403K|       |  3040   (2)| 00:00:37 |
    |* 10 |        HASH JOIN                 |                             |   204K|  7403K|  5392K|  3040   (2)| 00:00:37 |
    |  11 |         TABLE ACCESS FULL        | WORKER_TBL                  |   162K|  3485K|       |   584   (1)| 00:00:08 |
    |* 12 |         INDEX FULL SCAN          | BENEFIT_IND                 |   204K|  3001K|       |  1927   (2)| 00:00:24 |
    |  13 |    SORT AGGREGATE                |                             |     1 |   243 |       |  5032   (2)| 00:01:01 |
    |* 14 |     HASH JOIN RIGHT SEMI         |                             |    16 |  3888 |       |  5031   (2)| 00:01:01 |
    |  15 |      JOIN FILTER CREATE          | :BF0001                     |     1 |    29 |       |     2   (0)| 00:00:01 |
    |* 16 |       TABLE ACCESS BY INDEX ROWID| WORKER_COST_CENTRE_TBL      |     1 |    29 |       |     2   (0)| 00:00:01 |
    |* 17 |        INDEX RANGE SCAN          | WORKER_CC_CC_IDX            |    28 |       |       |     1   (0)| 00:00:01 |
    |* 18 |      VIEW                        | BENEFIT_SUMMARY_CURR_YEAR_V |   204K|    41M|       |  5027   (1)| 00:01:01 |
    |  19 |       HASH GROUP BY              |                             |   204K|  7403K|  9656K|  5027   (1)| 00:01:01 |
    |  20 |        JOIN FILTER USE           | :BF0001                     |   204K|  7403K|       |  3040   (2)| 00:00:37 |
    |* 21 |         HASH JOIN                |                             |   204K|  7403K|  5392K|  3040   (2)| 00:00:37 |
    |  22 |          TABLE ACCESS FULL       | WORKER_TBL                  |   162K|  3485K|       |   584   (1)| 00:00:08 |
    |* 23 |          INDEX FULL SCAN         | BENEFIT_IND                 |   204K|  3001K|       |  1927   (2)| 00:00:24 |
    Predicate Information (identified by operation id):
       3 - access("E"."WORKER_ID"="X"."WORKER_ID")
       5 - filter("X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/10/08') OR "X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/11/08')
                  AND "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/11/08') OR
                  "X"."EFFECTIVE_DATE">="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE"<="DTUTIL"."TODATE"('2013/11/08'))
       6 - access("X"."COST_CENTRE"='100033')
       7 - filter("PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"E"."WORKER_ID",TRUNC(SYSDATE@!))=1
      10 - access("X"."WORKER_ID"="X"."WORKER_ID")
      12 - filter(TO_CHAR(INTERNAL_FUNCTION("X"."ACTIVITY_DATE"),'YYYY')>=TO_CHAR(SYSDATE@!,'YYYY'))
      14 - access("E"."WORKER_ID"="X"."WORKER_ID")
      16 - filter("X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/10/08') OR "X"."EFFECTIVE_DATE"<="DTUTIL"."TODATE"('2013/11/08')
                  AND "X"."EXPIRATION_DATE">="DTUTIL"."TODATE"('2013/11/08') OR
                  "X"."EFFECTIVE_DATE">="DTUTIL"."TODATE"('2013/10/08') AND
                  "X"."EXPIRATION_DATE"<="DTUTIL"."TODATE"('2013/11/08'))
      17 - access("X"."COST_CENTRE"='100033')
      18 - filter("PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"E"."WORKER_ID",TRUNC(SYSDATE@!))=1
      21 - access("X"."WORKER_ID"="X"."WORKER_ID")
      23 - filter(TO_CHAR(INTERNAL_FUNCTION("X"."ACTIVITY_DATE"),'YYYY')>=TO_CHAR(SYSDATE@!,'YYYY'))
    So I can definitely tune the query to work against my acceptance database - that isn't really the problem.  The problem is that I can't count on the optimizations to be the same between development and acceptance.  So if I move this to production, how do I know I don't get a third plan?!?!?
    Can anyone suggest anything that might cause what I'm seeing above - and / or anything that I can do to prevent it.  This is just one query out of 10,000 or so that I'm working with - we are migrating from Oracle 9 to 11g and the queries all worked perfectly on 9.
    Thanks in Advance!
    Cory Aston

    Here are the two plans for the simplified query - using the OUTLINE format as per your request
    This is the bad plan from acceptance.
    PLAN_TABLE_OUTPUT
    SQL_ID  3zfrdhqpqk1mw, child number 1
    select /*+ gather_plan_statistics */        w.worker_id, w.worker_name
    from worker_v                   w,        worker_cost_centre_v       c
    where w.worker_id = c.worker_id    and c.effective_date <=
    trunc(sysdate)    and c.expiration_date >= trunc(sysdate)    and
    c.cost_centre = '100033'    and pkg_taw_security.user_worker_access('CA1
    7062',                                            'TIMEKEEPER',
                                       w.worker_id,
                       trunc(sysdate)) = 1  order by w.worker_name
    Plan hash value: 1726112176
    | Id  | Operation                      | Name                   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT               |                        |       |       |   589 (100)|          |
    |   1 |  SORT ORDER BY                 |                        |     4 |   400 |   589   (2)| 00:00:08 |
    |*  2 |   HASH JOIN                    |                        |     4 |   400 |   588   (1)| 00:00:08 |
    |   3 |    VIEW                        | WORKER_COST_CENTRE_V   |     4 |   124 |     2   (0)| 00:00:01 |
    |*  4 |     TABLE ACCESS BY INDEX ROWID| WORKER_COST_CENTRE_TBL |     4 |   116 |     2   (0)| 00:00:01 |
    |*  5 |      INDEX RANGE SCAN          | WORKER_CC_CC_IDX       |    28 |       |     1   (0)| 00:00:01 |
    |*  6 |    VIEW                        | WORKER_V               |   162K|    10M|   584   (1)| 00:00:08 |
    |   7 |     TABLE ACCESS FULL          | WORKER_TBL             |   162K|  3485K|   584   (1)| 00:00:08 |
    Outline Data
      /*+
          BEGIN_OUTLINE_DATA
          IGNORE_OPTIM_EMBEDDED_HINTS
          OPTIMIZER_FEATURES_ENABLE('11.2.0.3')
          DB_VERSION('11.2.0.3')
          OPT_PARAM('optimizer_index_cost_adj' 10)
          ALL_ROWS
          OUTLINE_LEAF(@"SEL$2")
          OUTLINE_LEAF(@"SEL$3")
          OUTLINE_LEAF(@"SEL$1")
          NO_ACCESS(@"SEL$1" "C"@"SEL$1")
          NO_ACCESS(@"SEL$1" "W"@"SEL$1")
          LEADING(@"SEL$1" "C"@"SEL$1" "W"@"SEL$1")
          USE_HASH(@"SEL$1" "W"@"SEL$1")
          FULL(@"SEL$2" "X"@"SEL$2")
          INDEX_RS_ASC(@"SEL$3" "X"@"SEL$3" ("WORKER_COST_CENTRE_TBL"."COST_CENTRE"
                  "WORKER_COST_CENTRE_TBL"."EFFECTIVE_DATE"))
          END_OUTLINE_DATA
    Predicate Information (identified by operation id):
       2 - access("W"."WORKER_ID"="C"."WORKER_ID")
       4 - filter("X"."EXPIRATION_DATE">=TRUNC(SYSDATE@!))
       5 - access("X"."COST_CENTRE"='100033' AND "X"."EFFECTIVE_DATE"<=TRUNC(SYSDATE@!))
       6 - filter("PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"W"."WORKER_ID",TRUN
                  C(SYSDATE@!))=1)
    Note
       - cardinality feedback used for this statement
    62 rows selected.
    This is the good one from development.
    PLAN_TABLE_OUTPUT
    SQL_ID  3zfrdhqpqk1mw, child number 0
    select /*+ gather_plan_statistics */        w.worker_id, w.worker_name
    from worker_v                   w,        worker_cost_centre_v       c
    where w.worker_id = c.worker_id    and c.effective_date <=
    trunc(sysdate)    and c.expiration_date >= trunc(sysdate)    and
    c.cost_centre = '100033'    and pkg_taw_security.user_worker_access('CA1
    7062',                                            'TIMEKEEPER',
                                       w.worker_id,
                       trunc(sysdate)) = 1  order by w.worker_name
    Plan hash value: 3435904055
    | Id  | Operation                      | Name                   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT               |                        |       |       |     5 (100)|          |
    |   1 |  SORT ORDER BY                 |                        |    18 |   918 |     5  (20)| 00:00:01 |
    |   2 |   NESTED LOOPS                 |                        |       |       |            |          |
    |   3 |    NESTED LOOPS                |                        |    18 |   918 |     4   (0)| 00:00:01 |
    |*  4 |     TABLE ACCESS BY INDEX ROWID| WORKER_COST_CENTRE_TBL |    18 |   522 |     2   (0)| 00:00:01 |
    |*  5 |      INDEX RANGE SCAN          | WORKER_CC_CC_IDX       |    29 |       |     1   (0)| 00:00:01 |
    |*  6 |     INDEX UNIQUE SCAN          | WORKER_PK              |     1 |       |     1   (0)| 00:00:01 |
    |   7 |    TABLE ACCESS BY INDEX ROWID | WORKER_TBL             |     1 |    22 |     1   (0)| 00:00:01 |
    Outline Data
      /*+
          BEGIN_OUTLINE_DATA
          IGNORE_OPTIM_EMBEDDED_HINTS
          OPTIMIZER_FEATURES_ENABLE('11.2.0.3')
          DB_VERSION('11.2.0.3')
          OPT_PARAM('optimizer_index_cost_adj' 10)
          ALL_ROWS
          OUTLINE_LEAF(@"SEL$5428C7F1")
          MERGE(@"SEL$2")
          MERGE(@"SEL$3")
          OUTLINE(@"SEL$1")
          OUTLINE(@"SEL$2")
          OUTLINE(@"SEL$3")
          INDEX_RS_ASC(@"SEL$5428C7F1" "X"@"SEL$3" ("WORKER_COST_CENTRE_TBL"."COST_CENTRE"
                  "WORKER_COST_CENTRE_TBL"."EFFECTIVE_DATE"))
          INDEX(@"SEL$5428C7F1" "X"@"SEL$2" ("WORKER_TBL"."WORKER_ID"))
          LEADING(@"SEL$5428C7F1" "X"@"SEL$3" "X"@"SEL$2")
          USE_NL(@"SEL$5428C7F1" "X"@"SEL$2")
          NLJ_BATCHING(@"SEL$5428C7F1" "X"@"SEL$2")
          END_OUTLINE_DATA
    Predicate Information (identified by operation id):
       4 - filter("X"."EXPIRATION_DATE">=TRUNC(SYSDATE@!))
       5 - access("X"."COST_CENTRE"='100033' AND "X"."EFFECTIVE_DATE"<=TRUNC(SYSDATE@!))
       6 - access("X"."WORKER_ID"="X"."WORKER_ID")
           filter("PKG_TAW_SECURITY"."USER_WORKER_ACCESS"('CA17062','TIMEKEEPER',"X"."WORKER_ID",TRUN
                  C(SYSDATE@!))=1)
    60 rows selected.
    I'm not sure how to interpret what dbms_xplan is telling me above.  Any help would be greatly appreciated!!
    Thanks,
    Cory

  • BMM Logic to choose between two logical sources

    Hi All - I am new to OBIEE and hope you can help me out with this problem.
    I have a dim table (dimA) and an alias of dimA (dimB). Both of these tables are snowflakes off of two seperate "lookup" tables that join to the fact. I want to use dimA versus dimB based on logic, such as if the key to lookuptable1 does not exist, then use lookuptable2. I want to combine both tables into the same BMM logical table and presentation table. Is there way to build this in the BMM ( to choose dimA versus dimB)??
    Any ideas is much appreciated!! Thank you!

    What is lookup table here? is it lookup in 11g?
    ~ http://cool-bi.com

  • MacBook Pro: Swapping Hard Drives Between Two Identical Macs?

    I have two Macbook Pro notebooks. They are both the June 11th 2012 models both with cd/dvd drives. They both have Mavericks installed on both.
    I want to give my 15 inch to my son who has the 13 inch. They 13 will be mine and the 15 his.
    Can i just swap his 750HD from the 13 and put it into the 15? Can i also remove my 250 Samsung pro SSD from my 15 and put it in his 13?
    What are some ways i can go about this that are easy?
    Thanks in advance,
    PS: Like i said they both run mavericks and they are the same generation MBP from June 2012 release from Apple. Except one is a 2.5 i5 13 inch and the other is a 15 inch 2.3 Quad i7.
    We pretty much just want to trade laptops and swap the hard drives easy.
    Thanks again.

    nn007400,
    are each of your laptops associated with your respective Apple IDs? If so, then that might be a fly in the ointment when it comes to updating apps purchased through the Mac App Store, if the tie-in involves your MacBook Pros’ serial numbers as well as your Apple IDs. (I don’t know whether that’s the case or not.)
    The disks can certainly be exchanged physically between the two portables — you could try it for a while, and if you encounter a problem, you can exchange them back and consider alternative (but unfortunately less convenient) approaches.

  • Application to compare differences between two identical drives..

    Hi,
    I'm after an application that can be used to compare two separate drives (or better then that, specific folders on two separate drives), supposedly with the same files on each, and analyse the differences between the two (ie I want to make sure everything has copied from one to the other succesfully before deleting the original!)
    It's quite a large amount of data (500GB), and I don't need the software to actually do anything other than tell me the differences - nothing like copying the missing files is needed. I had to intentionally leave a few files behind as they were causing errors in the copying process.
    Any suggestions? Thanks!

    I am using the FormsTool V1.0 from the previously mentioned http://www.orcl-toolbox.com This is a great tool for doing diffs on Forms and Reports. It has saved me several times in the past. Never had the need for the replace functionality but I am sure it is just a matter of time.
    Also great for doing impact analysis when someone wants to change something and wants to know how many forms/reports are impacted.
    Well worth having a copy for the $200 cost. No I do not work for orcl-toolbox ;-)
    Bob.
    Message was edited by:
    Bob C

  • How to choose between two subscriptions

    I have Office 365 World Minutes AND a 60 minute subscription to landlines in Brazil. When I call a number in Brazil, from Dallas TX, where I am now, I want to choose that subscription and use those minutes instead of the world minutes. I only want to use the World Minutes when I call a landline number here here in the States or another country. Because now, I ran out of World Minutes, but I still have 60 minutes to Brazil, and still Skype doesn't let me call a Brazil number!

    BIG DEAL getting a new status! What about the question I posted yesterday? I have a subscription with minutes I can't use because there's no way to choose which subscription minutes to consume while calling. I've been clicking all over this Skype Community looking for HELP, for an answer to what I posted yesterday, but nothing yet! What is this community for anyway? There are plenty of chats around, what I need is help, answers to a Skype issue! I'm paying for Skype service, I demand answers, I can't wait around for someone to see my posting and decide to help me!

  • User Profile number mismatch between two identical farms

    I've created a secondary High Availability farm with, I believe, all of the same User Profile settings as the primary farm.
    The primary shows:
    Number of User Profiles 3,428
    Secondary:
    Number of User Profiles 3,363
    Any recommendations on how to compare these results in a way that will establish why there is a discrepancy?
    Thanks,
    Scott

    How long has the primary farm been running? My first thought is you may have some orphaned (old) profiles from users who no longer have accounts and maybe haven't been completed cleaned up.
    Another thought: Are you syncing the same OUs in both farms?
    Do you have multiple authentication stores (Active Directory and a custom FBA provider for example)?
    Jason Warren
    @jaspnwarren
    jasonwarren.ca
    habaneroconsulting.com/Insights

  • Color variation between two identical illustrator documents???

    I am trying to copy an object from one Illustrator document into another Illustrator document but it keeps changing the color and adding a small stroke around the object.  I can seem to figure out why it would be doing this????  I have check the color modes on both and they are both in CMYK.
    Any thoughts???

    Have you measured the colour?
    Do you get different readings or is it just a a contrast thing? (The "stroke" might be just an anti-aliasing artifact.)
    Sometimes your eyes can fool you.
    In this example the little grey inside squares are exactly the same colour but your eyes tell you that the left hand one is blueish and the right hand one is yellowish.

  • How to config Rules between Service Identity and Relying Party Application in Azure ACS?

    I am going to implement an Authorization Server talks to ACS OAuth2 endpoint with Java following this
    article.
    First, I created a Service Identity using the ACS Management Service by OData protocol, and then add a password credential in ACS Management Portal.
    Id: "22194691",
    Name: "oauth2-client-sample",
    Description: "Test",
    RedirectAddress: "http://localhost:8080",
    SystemReserved: false
    Second, I created a relying party application in ACS Management Portal with no Identity Providers, assume that its ID is 22194640 and its Realm is "https://oauth2-res-sample.herokuapp.com/".
    Third, I created a Delegation by ACS Management Service and got an Authorization Code(for example, XkbSXdM0d0v8wQ835hvKUg==) from ACS,
    POST /v2/mgmt/service/Delegations
    Authorization: Bearer XXXX(SWT from ACS)
    Content-Type: application/json
    {"ServiceIdentityId": "22194691", "RelyingPartyId": "22194640",
    "NameIdentifier": "[email protected]", "IdentityProvider": "WAAD"}
    At last, I posted the authorization code and service identity to ACS to request an Access Token,
    POST v2/OAuth2-13
    Content-Type: application/x-www-form-urlencoded
    grant_type=authorization_code&client_id=oauth2-client-sample
    &client_secret=xxxxxxxx&code=XkbSXdM0d0v8wQ835hvKUg%3D%3D
    &redirect_uri=http%3A%2F%2Flocalhost%3A8080
    &scope=https%3A%2F%2Foauth2-res-sample.herokuapp.com%2F
    But I got the following error from ACS,
    error: "invalid_request" error_description: "ACS50000: There was an error issuing a token. ACS60000: An error occurred while processing rules for relying party 'https://oauth2-res-sample.herokuapp.com/'
    using the service identity or identity provider named 'oauth2-client-sample'. ACS60000: Policy engine execution error. Trace ID: e8a1fa8c-19d8-4271-8095-80938ea45e69 Correlation ID: 82a0e83e-202f-4957-8871-cdcdf927b512 Timestamp: 2015-02-23 02:21:34Z"
    This is the Rule Group for the relying party application, pass through all the first claims to output. But
    I don't know what's wrong.

    Hello Cary!
    Request your confirmation if you could resolve the problem stated above? If no, please let us know at the earliest and we'll be glad to help. If yes, please share your valuable inputs for community's reference.
    Thank you,
    Arvind

  • If I install a new NVidia PC card on my Mac Pro will I be able to choose between Boot Camp and OS X during startup?

    I couldn't find an answer to this anywhere.
    Will the lack of EFI prevent me from choosing which OS to boot into (due to no bootup screen)?
    Does Apple have a workaround for this?
    Also, is my Mac Pro (Quad; 4,1; 2009) compatible with the whole line of Geforce GTX, provided I have the "magic" drivers?
    (I need to use OS X for music and 2D graphics (Pro Tools, Adobe), and the Windows side for game development with Oculus DK2)

    Thank you! Great advice.
    I think I'm giving up on this, though. Only few card models are supported on the Mac Pro (with or without EFI firmware flash), and it's too much of a risk it won't even work at all if I don't buy the exact overpriced/outdated chipset supported. Apple hardware support is terrible, and information on workarounds to that lack of support are nonexistent. I wish I could make this work, but it's cheaper and easier to just get a cheap AMD with great graphics for all 3D/rendering projects.

  • Drag and Drop between two java applications

    Hi,
    I am trying to implement drag and drop between two instances of our java application. When i drop the content on the target, the data flavors are transmitted properly, but i get the exception :
    java.awt.dnd.InvalidDnDOperationException: No drop current
         at sun.awt.dnd.SunDropTargetContextPeer.getTransferData(SunDropTargetContextPeer.java:201)
         at sun.awt.datatransfer.TransferableProxy.getTransferData(TransferableProxy.java:45)
         at java.awt.dnd.DropTargetContext$TransferableProxy.getTransferData(DropTargetContext.java:359)
         at com.ditechcom.consulbeans.TDNDTree.drop(TDNDTree.java:163)
         at java.awt.dnd.DropTarget.drop(DropTarget.java:404)
         at sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(SunDropTargetContextPeer.java:547)
    How can i fix this ?
    Thanks a lot,
    Karthik

    Play with this;-import java.awt.*;
    import java.awt.datatransfer.*;
    import java.awt.dnd.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.io.*;
    // Credit to bbritna who I stole it from in the 'New To ..' Forum
    public class DragComps implements DragGestureListener, DragSourceListener,
                                         DropTargetListener, Transferable{
        static final DataFlavor[] supportedFlavors = { null };
        static{
              try {
                  supportedFlavors[0] = new DataFlavor(DataFlavor.javaJVMLocalObjectMimeType);
              catch (Exception ex) { ex.printStackTrace(); }
        Object object;
        // Transferable methods.
        public Object getTransferData(DataFlavor flavor) {
               if (flavor.isMimeTypeEqual(DataFlavor.javaJVMLocalObjectMimeType))
             return object;
               else return null;
        public DataFlavor[] getTransferDataFlavors() {
               return supportedFlavors;
        public boolean isDataFlavorSupported(DataFlavor flavor) {
               return flavor.isMimeTypeEqual(DataFlavor.javaJVMLocalObjectMimeType);
        // DragGestureListener method.
        public void dragGestureRecognized(DragGestureEvent ev)    {
               ev.startDrag(null, this, this);
        // DragSourceListener methods.
        public void dragDropEnd(DragSourceDropEvent ev) { }
        public void dragEnter(DragSourceDragEvent ev)   { }
        public void dragExit(DragSourceEvent ev)        { }
        public void dragOver(DragSourceDragEvent ev) {
               object = ev.getSource(); }
        public void dropActionChanged(DragSourceDragEvent ev) { }
        // DropTargetListener methods.
        public void dragEnter(DropTargetDragEvent ev) { }
        public void dragExit(DropTargetEvent ev)      { }
        public void dragOver(DropTargetDragEvent ev)  {
               dropTargetDrag(ev); }
        public void dropActionChanged(DropTargetDragEvent ev) {
           dropTargetDrag(ev); }
        void dropTargetDrag(DropTargetDragEvent ev) {
               ev.acceptDrag(ev.getDropAction()); }
        public void drop(DropTargetDropEvent ev)    {
               ev.acceptDrop(ev.getDropAction());
                   try {
                       Object target = ev.getSource();
                      Object source = ev.getTransferable().getTransferData(supportedFlavors[0]);
                       Component component = ((DragSourceContext) source).getComponent();
                       Container oldContainer = component.getParent();
                       Container container = (Container) ((DropTarget) target).getComponent();
                       container.add(component);
                       oldContainer.validate();
                       oldContainer.repaint();
                       container.validate();
                       container.repaint();
                   catch (Exception ex) { ex.printStackTrace(); }
                   ev.dropComplete(true);
        public static void main(String[] arg)    {
              JButton button = new JButton("Drag this button");
              JLabel label = new JLabel("Drag this label");
              JCheckBox checkbox = new JCheckBox("Drag this check box");
              JFrame source = new JFrame("Source Frame");
              Container source_content = source.getContentPane();
              source.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              source_content.setLayout(new FlowLayout());
              source_content.add(button);
              source_content.add(label);
              JFrame target = new JFrame("Target Frame");
              Container target_content = target.getContentPane();
              target.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              target_content.setLayout(new FlowLayout());
              target_content.add(checkbox);
              DragComps dndListener = new DragComps();
              DragSource dragSource = new DragSource();
              DropTarget dropTarget1 = new DropTarget(source_content,
              DnDConstants.ACTION_MOVE, dndListener);
              DropTarget dropTarget2 = new DropTarget(target_content,
              DnDConstants.ACTION_MOVE, dndListener);
              DragGestureRecognizer dragRecognizer1 =
              dragSource.createDefaultDragGestureRecognizer(button,
              DnDConstants.ACTION_MOVE, dndListener);
              DragGestureRecognizer dragRecognizer2 =
              dragSource.createDefaultDragGestureRecognizer(label,
              DnDConstants.ACTION_MOVE, dndListener);
              DragGestureRecognizer dragRecognizer3 =
              dragSource.createDefaultDragGestureRecognizer(checkbox,
              DnDConstants.ACTION_MOVE, dndListener);
              source.setBounds(0, 200, 200, 200);
              target.setBounds(220, 200, 200, 200);
              source.show();
              target.show();
    }[/code                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Failover Clustering between two zones in a single node?

    In Solaris 10 node, I have two non-global zone (sparse root). I want to create failover clustering between two zones for a specific application. I have created two small zone and installed sun cluster 3.2 in global zone. After that what I need to complete the rest of job. Please help me.

    It is mandatory to configure IPMP, but if you check your network configuration it should have been done already, but you are free to change the configuration.
    I assume you booted the node after executing scinstall so the cluster should be up and running, check that with cluster status.
    Now you have to create a resource group with the zones in its nodelist
    clrg create -n <nodename>:<zone1>,<nodename>:<zone2> group-name
    create your logical host in this resource group
    clrslh create -g group-name <alias name>
    Alias name is a name /etc/host like appaddr
    online your resource group
    clrg online -eM group-name
    Now you have an ip failover between the two zones.
    Regarding the other details, I do not know what you are planning to do, so I need more information here regarding storage application and so on.
    Detlef

  • Different ways to copy data between two schemas in one instance

    Hi there,
    I am searching a good way to copy data between two schemas in the same instance.
    Both schemas have an identical structure such as triggers, tables, views and so on. The only difference is the purpose: one is the productivity system and one is for development.
    I looked at datapump but I do not explicit want to export / import. I want to keep the data in the productivity schema as well as copy it to the other schema. Any ideas? I found out there is a copy statement but I dont't know how that works.
    Thank you so far,
    Jörn

    Thank you for your replies!
    I also thought of creating a second instance for development and move the dev - schema to it. I just don't know whether our server can handle both (performance?). Anyway the idea is to have a possibility to quickly rebuild the data inside a schema without indixes or triggers, just pure data. I thought the easiest way would be to copy the data between the schemas as they are exactly the same. However if you tell me DataPunp is the best solution i won't deny using it :).
    When you export data a file is created. does that also mean that the exported data is deleted inside the schema?
    best regards
    Jörn
    Ps: Guido, you are following me, aren' t you? ;-)

Maybe you are looking for

  • Error during DTP Activation

    Hi all, I have a DTP to load data from one DSO to another DSO. I'm getting the following error while activating this DTP, Activation of Objects with Type Data Transfer Process    Internal Activation (Data Transfer Process )       Post Processing/Chec

  • TS4425 Cannot access Photo Stream on my Apple TV.

    Updated over a week ago. Software 6.0. iCloud terms and conditions have changed it says yet it won't allow me to accept the new terms. Elsewhere it advises changing the region. Have tried that. It doesn't help. Please help.

  • Trouble with my mailaccounts in mail 1.3.11

    hello, i have some troubles with mail 1.3.11 (running under mac os x 10.3.9). i have 5 different mail acconuts in mail. one of them should be the standard account and the the rest alternatives accounts. But if i write e new email, is preset the wrong

  • Account determination not possible in MIGO

    Hi Gurus, While posting GR i am getting this error msg as "account determination for entry not possible" Pls if any have worked on it give the solution asap It will be highly appreciable Thanks Usha

  • KMS Client activation not working.

    We recently moved our KMSHost to a new server. Changed the DNS SVR record and all. All of the Windows 7 clients have moved over fine, but most of our newer Server 2012 R2 Servers are stuck on the old server information. I have tried slmgr /skms and i