Surrogate Key and Map for Cube

Hi
I am new to Data Warehousing and am trying to use OWB 11g.
I am trying to create dimensions with multiple levels. When I create more than one level it need to have surrogate as well business key for each dimension level. But I can create only one surrogate in the dimension, there is no option to create multiple surrogate keys in the same dimension. so what am I missing?
My second question is regarding cube. Do I need to create a Mapping for a cube? if yes, should I move the data to the cube from the dimensions? and where will the measures come from? do i need to load the measures or they will be calculated automatically?
please reply...
regards
Arif

hi
Got it, Yes that was the reason,
The table was not properly deployed after the dimension was modified.
Anyway, the describe of the table is as follows
describe arif.QUESTION_DIM
Name Null Type
DIMENSION_KEY NOT NULL NUMBER
IGV_ID NUMBER
PER_ID NUMBER
DIM_ID NUMBER
IGO_ID NUMBER
INQ_ID NUMBER
ID NUMBER
DIM_ORDEM NUMBER
DIM_AMBITO VARCHAR2(3)
DIM_NOME VARCHAR2(150)
10 rows selected
Now, I am having another problem,
when, I deploy the Map to load the data from three different tables, it gives the following problem
Name               Action               Status          Log
QUESTION_MAP          Create               Warning          ORA-06550: line 297, column 25:
                                        PLS-00302: component 'ID' must be declared
QUESTION_MAP          Create               Warning          ORA-06550: line 1153, column 11:
                                        PL/SQL: SQL Statement ignored
QUESTION_MAP          Create               Warning          ORA-06550: line 1155, column 15:
                                        PL/SQL: ORA-00904: "QUESTION_DIM"."ID": invalid identifier
QUESTION_MAP          Create               Warning          ORA-06550: line 1155, column 31:
                                        PLS-00302: component 'ID' must be declared
QUESTION_MAP          Create               Warning          ORA-06550: line 233, column 1:
                                        PL/SQL: SQL Statement ignored
QUESTION_MAP          Create               Warning          ORA-06550: line 2539, column 11:
                                        PL/SQL: SQL Statement ignored
QUESTION_MAP          Create               Warning          ORA-06550: line 2541, column 15:
                                        PL/SQL: ORA-00904: "QUESTION_DIM"."ID": invalid identifier
QUESTION_MAP          Create               Warning          ORA-06550: line 2541, column 31:
                                        PLS-00302: component 'ID' must be declared
QUESTION_MAP          Create               Warning          ORA-06550: line 297, column 9:
                                        PL/SQL: ORA-00904: "QUESTION_DIM"."ID": invalid identifier
Edited by: user643560 on Oct 22, 2008 9:38 AM

Similar Messages

  • About Surrogate Key and Dimension Key on OWB 10.2

    Hi, everyone.
    I am using OWB 10.2 and I have a question about Surrogate key and Dimension Key.
    I indicated the foreign key as VARCHAR2 type in Fact Table and Dimension Key as VARCHAR2 type is operated as Primary key in Dimension Table. I made Single Level in Dimension Table.
    I know that Dimension Key stores the surrogate ID for dimension and is the primary key of the table. Also, Surrogate ID should be only NUMBER type.
    So, in this case, Surrogate ID is NUMBER type
    Dimension key should be NUMBER type to store the surrogate ID.
    But, Dimension key also should operate the primary to relate Foreign key as VARCHAR2 type.
    How I can solve this confusing condition?
    Please let me know that.
    JWS

    Hi JWS,
    From a SQL point of view it should not be a problem to join a NUMBER field to a VARCHAR2 field because during execution there will be an implicite cast for the NUMBER value to a VARCHAR2 value. See the example below.
       SELECT * FROM DUAL
       WHERE   1 = '1'From an OWB point of view it is not possible to have a Dimension with an NUMBER value Key that has a relation to a VARCHAR2 value Foreign key in a Fact table. This is caused due to the creation of a Fact table in OWB in which the Foreign keys in it are build from de Dimension tables that refer to them.
    You will loose the reference to the Dimension when changing the type of the Foreign Key.
    To resolve this issue I would advise you to use a Sequence that generates your Surrogate Key (NUMBER type) for the Dimension table and store it in the Primary Key Column (VARCHAR2 type).
    When validating the mapping you will get a warning, but when executing this should give no problems.
    Regards,
    Ilona

  • Key and text for variable

    Dear ALL,
    I m having one variable for that i need key and text in bex analyzer.
    how to enable the key and text for a variable.
    pls asap
    regards,
    Jenish

    Hi jenish kumar ,
    if i under stan your requirement correctly,  need to have both text and key values for variables with F4 help.
    you need to chnage the properties of that infoobject at infoobjects level or at infoprovider level,
    this is at infoprovider level
    in RSA1-> go to change mode of infoprovider (Multiprovider/ cube) on which Query is build) then Expand  Charecteristc Dimension -> select infoobject -> right -> select provider-specific properties -> select Display '0 Key and Text' . Activate infoprovider and Run Query and check the Selection screen.
    hope this helps
    Regards
    Daya Sagar

  • What are the surrogate key and row_number( )

    what are the surrogate key and row_number( ) function, and why do not we always make the row_number a primary key in the table.

    Mohannad,
    we just try to safe your efforts and to prevent common
    mistakes you can make.
    Look here.
    Your requirement is to avoid gaps in sequence.
    OK. But it means you HAVE to lock your sequence
    exclusively until you commit transaction.
    Also, it means you have to rollback sequence
    number to original value if you rollback you
    entire transaction.
    SQL> create table my_tab (id number);
    &nbsp
    Table created.
    &nbsp
    SQL> create table numer_tab (id number);
    &nbsp
    Table created.
    &nbsp
    SQL> insert into numer_tab values(0);
    &nbsp
    1 row created.
    &nbsp
    SQL>  create or replace trigger
      2   tr_no_gap
      3   before insert on my_tab
      4   for each row
      5   begin
      6    /* Let's lock sequence in exclusive mode */
      7    update numer_tab set id = id + 1
      8    returning id into :new.id;
      9   end;
    10  /
    &nbsp
    Trigger created.Now I havn't to worry about gaps:
    Fisrt session:
    SQL> insert into my_tab values(null);
    &nbsp
    1 row created.because my next session is waiting:
    SQL> insert into my_tab values(null);
    &nbspI do commit in first and second session -everything is OK:
    SQL> commit;
    &nbsp
    Commit complete.
    &nbsp
    SQL> select * from my_tab;
    &nbsp
            ID
             2
             1Now I do the same but do rollback in 1th:
    SQL> insert into my_tab values(null);
    &nbsp
    1 row created.
    &nbsp
    SQL> rollback;
    &nbsp
    Rollback complete.and commit in 2th:
    SQL> insert into my_tab values(null);
    &nbsp
    1 row created.
    &nbsp
    SQL> commit;
    &nbsp
    Commit complete.No gaps:
    SQL> select * from my_tab;
    &nbsp
            ID
             2
             3
             1Now I will not lock sequence resource due a transaction:
    SQL>  create or replace trigger
      2   tr_no_gap
      3   before insert on my_tab
      4   for each row
      5   declare
      6    pragma autonomous_transaction;
      7   begin
      8    /* Let's lock sequence in exclusive mode */
      9    update numer_tab set id = id + 1
    10    returning id into :new.id;
    11    commit;
    12   end;
    13  /
    &nbsp
    Trigger created.And I repeate my last operation.
    Both inserts execute immediately
    1th
    SQL> insert into my_tab values(null);
    &nbsp
    1 row created.2th
    SQL> insert into my_tab values(null);
    &nbsp
    1 row created.Now I rollback the first and commit the second.
    And what I see is the gap:
    SQL> select * from my_tab;
    &nbsp
            ID
             2
             3
             5
             1We are just trying to explain what you will have to
    pay the serious price of performance in the
    absence of gaps and you will have the lack
    of Oracle multithreading advantage in this case.
    I doubt your customers will happy with that.
    Rgds.

  • Enabling Key and text for the Variable Selection screen

    I need to display key and text for a characteristic when selecting the drop down menu in the variable selection screen of a web report. In the Business Explorer tab within the info-object, I changed the General Settings to display Key and text, but when I open the drop down menu for this characteristic, it is still displaying the key only. Is there some other place where this change needs to happen?

    Hi,
    Did you try to log out and log in again into BEx?
    Best regards,
    Eugene
    Message was edited by: Eugene Khusainov

  • Why does siri only have business and maps for U.S and not Ausstralia?

    why does siri only have business and maps for U.S and not Ausstralia?

    what does this mean ?
    Beta means it is unfinished, not fully featured and may have bugs.
    so is it not possible for siri to tell me the weather, and maps and businesses for Australia?
    That's correct. Nor will it do it for me in the UK. As it say's in the Siri FAQ I linked to:
    "Maps and local search support will be available in additional countries in 2012."

  • MDX Query to show the latest product text again historical facts (Type 2 dimenion linking on Surrogate key and also Natural Key)

    I need to write a MDX query to show the latest product text again historical facts or a chosen product text in time. I can write this query in TSQL, but new to MDX.
    The way I do it in TSQL is joining two queries together on the Natural Key as opposed to the surrogate key.
    Can this be done in MDX. I know I could write two separate MDX queries, one which get the product text I wan and the other to get the measure with the actual product text and Natural Key, and use a lookup function in ssrs to show the two result sets I the
    same tablix by looking up the Natural Keys. But this should be able to be done in one query shouldn't it.
    In the dsv the fact knows to join to the dimension using the surrogate key.
    Thanks J

    Hi Jamster,
    According to your description, you want to write a query to show the latest product text, right?
    In MDX, we can use LastNonEmpty function to return the lastest member winth a dimension. LastNonEmpty is an aggregation function available in the Enterprise version of SQL Server. However, you can create your own with a little bit of recursive MDX. Here
    is a sample query for you reference.
    With Member Measures.LastHits as
    iif(isempty(Measures.Hits),
    ([Date].[Year Month Day].prevmember,
    Measures.LastHits
    ),Measures.Hits)
    Reference
    http://cwebbbi.wordpress.com/2011/03/24/last-ever-non-empty-a-new-fast-mdx-approach/
    http://richardlees.blogspot.com/2010/07/getting-last-non-empty-value.html
    If this is not what you want, please provide us the detail structure of your cube and the expected result, so that we can make further analysis and give you the exactly MDX query.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Client Authentication/Authorization via ISE & AD, Posture Registry Key, and mapped to specific DHCP scope by AD membership

    Hi Team,
    I'm currently working on a configuration entailing WLC and ISE where the customer wants a single SSID,and wants his wireless clients to authenticate successfully if they pass a registry key compliance.  Additionally, they want clients to received a different IP address or get mapped to a different DHCP scope based on the Microsoft AD group they belong too. for example:
    Client authenticating with registry key and in AD group ABC that passes authentication gets IP address or subnet for AD group ABC.
    Client authenticating with registry key and in AD group XXX that passes authentication gets IP address or subnet for AD group XXX.
    Clients---->WLC------>ISE-----> MS AD ( groups ABC, XXXX, YYY )
    currently using EAP-PEAP/MSCHAPv2
    Does anyone have any idea or pointers or can refer me somewhere that I can read on how to accomplish this?  Not sure on how to do the registry compliance check nor what attributes will allow me to map the client to a DHCP Scope based on this AD group membership? 
    Thanks...

    Do check cisco how to guides you will get step by step configuration of the current requirement
     

  • Key Board Mapping for the Shift Key

    I hope this is the correct place to post.
    I just tried to use Ukelele to change my ` key into a 'shift' key but could not do it. Please note that I was not trying to change the 'shift' key itself, but was trying to turn the ` key into an extra 'shift'.
    The reason I want to do this is because on this european macbook they make room for the ` key by robbing you of half of the standard shift key you get on a US keyboard.
    Stretching out with my little finger across this useless key has given me repetitive strain and I am one hurting unit at the moment.
    I would be eternally grateful for any advice.

    Sorry, I did not Express correctly my requirements.
    I did not Ask For the Key Board Equvalent.
    In Forms 9i pressing F9 did not bring the attached LOV, i have to select the same from Menu. In order to avert the user to select From Menu. I want to Define F9 Funtion Globally to relfect in all forms through Key Borad Mapping.
    Is it Possible?

  • Data Type, Message Type and Mapping for FTP

    Thanks in advance for your replies.
    As our first production XI scenario, we need to move several (at least 46) files from our SAP instance to a couple of different servers to support our legacy systems.  Once all locations are on SAP this requirement should go away.
    I only want to pick up the file from the one server and place it on the other and this leads me to some questions.
    How do I define the Data Type and Message Type for each of the files?   Do I need to consider the size of the record in each interface and create DT/MT with different sizes.
    Do I need a mapping program that simply maps one structure to the other?

    I recently completed a similar exercise.
    It looks like this...
    server1 ftp (Sender - delete file) - XI - Server2 ftp (receiver - create file).  This will move the file from one server to another.
    I used the same schema and mapped fields on a one to one basis.
    The Size of the files I process are between 6kb and 500kb each, but the mapping/fields remain constant, just the numebr of items change.
    Worked seemelessly for the last three weeks (since go-live)

  • How to get Key and text for plant for which variable is created

    Hi All
    I have created one variable for Plant. User is going to give input for the plant for  execution of query.I am displaying the variable value which is user putting in the query. kindly let me know how to display key and text both for the query.as key is displaying presently.
    Regards
    Atul

    hi Atul kumar jais
    You have to create a text variable using replacement path for processing type and give the reference object which is the object which you created variable for, "replace with" one with key and anther one with text. Then you can display that in the header of the column or if you are using custom template, you can use webitem for it.
    thanks.
    Wond

  • Creation of Account payee keys and Table for House Bank

    Hi Gurus,
    Please tell me how to create a Account payee keys what is transaction code for this.And let me know that what is table to check the house Banks.
    Thanks

    I dont think you create payee keys mate, you get that data from your financial institute(bank) and then upload it into your sap system.
    so if I were in your position I would talk to the business user who deals with the bank & bank transfers currently in your client-organisation and ask for that info to be provided.
    from my previous payroll expreience I know the business user for payroll, usually the payroll manager, gets that info for the sap team member and then there should also be a standard upload program to upload all those payee keys into the system.
    cheers

  • Assigning primary key and index for a table

    I have a database consisting of only one table with 10 million rows which mostly looks like this:
    RECORDDATE                     ID     CLASS     VALUE
    24-JAN-12 10.52.47.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     10     156
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     10     156
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     3     0
    24-JAN-12 10.52.48.000000 AM     96     6     38
    24-JAN-12 10.53.05.000000 AM     253     16     197
    24-JAN-12 10.53.06.000000 AM     98     10     150
    24-JAN-12 10.53.06.000000 AM     98     0     0
    24-JAN-12 10.53.06.000000 AM     98     4     0
    24-JAN-12 10.53.06.000000 AM     98     11     33As you can see there are several entries that look exactly the same. Currently, I don't have primary key or index for any column and have a lot of performance issues. For example this query takes more than 10 seconds to run:
    select distinct      ID
    from      scdatabase4
    where ID < 253
    order by 1Since database is not my primary job and have no background of it, I'm really confused about what to do to fix my issues. Could someone please help me in assigning primary key and index if you agree that this is the problem?!

    Execute the query below to help decide what column to index:
    SELECT COLUMN_NAME, NUM_DISTINCT, NUM_NULLS, NUM_BUCKETS, DENSITY
    FROM DBA_TAB_COL_STATISTICS
    WHERE TABLE_NAME = 'your_table_name'
    ORDER BY COLUMN_NAME;
    The important columns are:
    1) NUM_DISTINCTS: Indicates the number of distinct values. If this number is very low for a column, it indicates that this column is not a very good candidate for a B-Tree index.
    2) NUM_NULL: Indicates the number of null values for each column. A column with few null values is a good candidate for a index
    But be aware, this is not a rule, it's just a method to help decide which column will have the most benefit of index creation.

  • Replacing SSL keys and certificates for already defined services

    I have about 10 new 2048-bit keys and certs to replace existing 1024 bit keys and certs on my CSS11500 with SSL modules.
    I'm trying to figure out my options, now that I've got the files SFTP'ed to the CSS.
    I can create a new startup-config file for the CSS with the new files referenced by the SSL associate commands in the startup-config. This will require a reboot (not desired).
    I can come up with new associations for the new files, then suspend the ssl-proxy-list and edit it to use the new associations. This doesn't require a reboot but then I have to clear out the old associations before I can delete the old key/cert files.
    Is there any way to force the CSS to "overwrite" an existing SSL association without rebooting the CSS?

    "Clear file filename "password" commad will help you to clear SSL certificates and private keys from the CSS that are no longer valid.
    Please check if the below URL: could help:
    http://www.cisco.com/en/US/docs/app_ntwk_services/data_center_app_services/css11500series/v7.40/command/reference/CmdGenA.html#wp1030153

  • WD for Java: How to I retrieve key and value for DropDownbyKey selection

    Dear All
    I thought this was going to be straightfoward and am obviously missing something.
    I have created a simple modifiable value set to create a dropdown list to select a country:
      public void GetCountryDropDownValues( )
        //@@begin GetCountryDropDownValues()
        Y_Tf_Npf_Get_Countries_Input countriesInput = new Y_Tf_Npf_Get_Countries_Input();
        wdContext.nodeY_Tf_Npf_Get_Countries_Input().bind(countriesInput);
        try {
              countriesInput.execute();
              wdContext.nodeY_Tf_Npf_Get_Countries_Input().nodeOutput_countries().invalidate();
         } catch (WDRFCException ex) {
              // TODO: handle exception
        IPrivateNonPersonalisedLearnAdminReq.IContextElement elem = wdContext.currentContextElement();
         String strObjElem0 = elem.COUNTRY;
         IWDAttributeInfo i_ObjType0 = wdContext.getNodeInfo().getAttribute(strObjElem0);
         ISimpleTypeModifiable w_ObjType0 = i_ObjType0.getModifiableSimpleType();
                   IModifiableSimpleValueSet s_ObjType0 = w_ObjType0.getSVServices().getModifiableSimpleValueSet();
                   s_ObjType0.clear();
         for(int i=0;i<wdContext.nodeEt_Countries().size();i++)
                      IPublicNonPersonalisedLearnAdminReq.IEt_CountriesElement elemOrg = wdContext.nodeEt_Countries().getEt_CountriesElementAt(i);
                        s_ObjType0.put(elemOrg.getLand1(),elemOrg.getLandx50());
        //@@end
    This is bound to a new context element attribute:
    Country of type string
    When value is selected from dropdown, it is stored in string
    What I want to be able to do is to retrieve the text as well as the key from the selected object.
    At the moment I can only return the key.
    i.e.  wdContext.currentContextElement().getCountry();
    Any pointers will be greatfully received and maximum points awarded to the first complete
    answer that works for me.
    Many thanks in advance
    Mike

    Hi,
    You can use the following code.
    ISimpleValueSet valueset = attInfo.getModifiableSimpleType().getSVServices().getValues();
    if(valueset.containsKey(key)){           // Give your key here, which you already know to retrieve
    String value = valueset.getText(key);             // Here you will get the value
    Hope it helps.
    Regards,
    Manoj

Maybe you are looking for