KEY LOOKUP Operator using TCL

Hi,
I am trying to create a key lookup operator using tcl.
OMBALTER MAPPING 'TESTMAP' ADD KEY_LOOKUP OPERATOR 'INSTITUTION_CHARACTERISTIC_DIM'\
SET PROPERTIES (BOUND_NAME,CREATE_NO_MATCH_ROW, LOOKUP_CONDITION)VALUES
('INSTITUTION_CHARACTERISTIC_DIM','true','OUTGRP1.INSTITUTION_CHAR_SRCKEY
= INGRP1.INST_CHAR_SRCKEY')
and then adding an attribute to the INGRP
OMBALTER MAPPING 'TESTMAP'ADD ATTRIBUTE 'LAST_ACTIVITY_DATE' OF GROUP 'INGRP1' OF OPERATOR 'INSTITUTION_CHARACTERISTIC_DIM'
This is creating a key lookup operator by the name
INSTITUTION_CHARACTERISTIC_DIM, and i can see the Bound Name in the
properties window, but when i double click and open the key lookup, i
dont see the result table under the LOOK UP tab.Because of this, the
attributes dont get added in the OUTGRP of the key lookup.
Am i missing some important property of a key look up?
can some one please help me with this...
Thanks in advance...

Hi,
you have to bind the lookup operator to the table:
OMBALTER MAPPING 'MAP_LOOKUP' ADD KEY_LOOKUP OPERATOR 'MY_LOOKUP' BOUND TO TABLE '/MY_PROJECT/MY_DB/DIM_CUSTOMERS'
OMBALTER MAPPING 'MAP_LOOKUP' MODIFY OPERATOR 'MY_LOOKUP' SET PROPERTIES (CREATE_NO_MATCH_ROW, LOOKUP_CONDITION)VALUES ('true','OUTGRP1.ID_CUSTOMER=INGRP1.ID_CUSTOMER')
OMBALTER MAPPING 'MAP_LOOKUP' ADD ATTRIBUTE 'ID_CUSTOMER' OF GROUP 'INGRP1' OF OPERATOR 'MY_LOOKUP'Regards,
Carsten.

Similar Messages

  • How to add new key lookup in Mapping ?

    Hi,
    I am learning OWB 10g from oracle.com site. I am following the Oracle-By-Example.
    [http://www.oracle.com/technology/obe/obe_bi/Lesson6_Designing_ETL_Data_Flow_Mappings/designing_etl_data_flow_mappings.htm]
    My OWB version is:
    OWB Client     : 10.2.0.1.31
    OWB Repository      : 10.2.0.1.0
    But the screenshots are different than what I am getting on my OWB. Am I using the correct version of Oracle-By-Example?
    I have created Mapping Dimension and Mapping Table. Now i want to add a Mapping Key Lookup. But as the screenshots shown in Oracle-By-Example are different, I cannot go further.
    Please help me.
    Thanks!
    Yogini

    Hi Yogini
    Here are some steps, it should be fairly straightforward, you can view the online help for more information.
    1. Drag and drop the Key Lookup operator on to the Mapping Editor.
    2. The Lookup wizard opens on the Welcome page. Select Next to move to page 2.
    3. Provide a name and description for the operator, default is KEY_LOOKUP. Hit Next to move to page 3.
    4. On the Groups page, hit Next.
    5. Select attributes to use in key lookup. For example those from the WAREHOUSES table in the OBE you are using that you will lookup in the COUNTRIES table. Shuttle those attrbutes to the right hand side. Hit Next to move to page 4.
    6. Select the COUNTRIES table from the combo box nder 'Select the object which has the lookup result. In the lookup conditions table ensure the matching criteria is set ie . LOCATION_ID from WAREHOUSE matches with LOCATION_ID from COUNTRIES. Hit Next to move to page 5.
    7. Here you can define the strategy for matches, just hit Next, then Finish. You have walked through all pages and are complete.
    Cheers
    David

  • Is there a limit on the number of Key Lookups against a table in a mapping

    I'm using OWB 11.1 and have a mapping with 15 Key Lookups against the one table. When I Validate the mapping it objects to a Key Lookup not being connected, even thuogh in the mapping all the Key Lookups have been renamed to their relevant fields?
    Is there a limit to the number of key lookups against the one table?

    Thanks for the replys.
    I'm getting a validation error, so can't run the mapping. Error VLD-1108: Operator Key_LOOKUP is not properly connected.
    The issue is solved, after checking each of the Key_Lookups, one was not connected to an output. The error occurs if an output field isn't used (connected to) a table or other operator.
    Edited by: user616385 on Sep 30, 2009 7:58 PM
    Edited by: user616385 on Sep 30, 2009 8:01 PM

  • Key-lookup on SCD II does not generate complete outer join

    Using OWB 10.2.0.3
    In a mapping to populate a fact table, I have to join two source tables (inner join). After that I have to perform a number of lookups on dimension objects to retrieve the dimension keys I want to store in my fact table. These dimensions are all SCD type II. All lookups are performed on the detail level of each dimension.
    In the generated code, the join condition is an outer join. However, the condition that OWB generates to determine the correct level of the dimension is an inner join:
    SELECT
    FROM
    "TMI_CELLEN_ACT" "TMI_CELLEN_ACT",
    "DIM_TMI_BESTEMMINGEN" "KL_DIM_TMI_BESTEMMINGEN"
    WHERE
    ( "KL_DIM_TMI_BESTEMMINGEN"."BEST_CODE" (+) = "TMI_CELLEN_ACT"."BESTEMMINGSCODE" ) AND
    ( ( "KL_DIM_TMI_BESTEMMINGEN"."BEST_ID" IS NULL ) OR
    ( "KL_DIM_TMI_BESTEMMINGEN"."BEST_ID" = "KL_DIM_TMI_BESTEMMINGEN"."DIMENSION_KEY" ) ) AND
    ( ( "KL_DIM_TMI_BESTEMMINGEN"."EFFECTIVE_DATE" IS NULL ) OR
    ( ( "KL_DIM_TMI_BESTEMMINGEN"."EXPIRATION_DATE" IS NOT NULL ) AND
    ( TO_DATE ( trunc(sysdate) ) >= "KL_DIM_TMI_BESTEMMINGEN"."EFFECTIVE_DATE" ) AND
    ( TO_DATE ( trunc(sysdate) ) <= "KL_DIM_TMI_BESTEMMINGEN"."EXPIRATION_DATE" ) ) OR
    ( ( "KL_DIM_TMI_BESTEMMINGEN"."EXPIRATION_DATE" IS NULL ) AND
    ( TO_DATE ( trunc(sysdate) ) >= "KL_DIM_TMI_BESTEMMINGEN"."EFFECTIVE_DATE" ) ) )
    In my case, this results in an empty data set.
    When using ANSI sql, the 'level-conditions' are generated as a WHERE-clause, which also results in an empty data set. When this code is included in the LEFT OUTER JOIN clause, all my data is there.
    What is going on here?
    Thanks
    Paul

    The "clever" workaround is to use a joiner, which is the way we implement the key lookup. So simply use that.
    To just explain why we limit the key-lookup. The main reason is that this operator is cardinality neutral. That means we always expect it to return one and only one row. If we give you too much flexibility we increase the risk of getting more than one row back which would break the logic for the mapping.
    Hope this makes sense, but just go with the joiner.
    Thanks,
    Jean-Pierre

  • Lookup SCD Use Most Current not working

    Hello Forum,
    Can I get some advice on how to set up/configure the Type 2 History Lookup, the ETL guy and I thought by just selecting the "Use the most current record" option, OWB would do it's auto magic and use the dimension key assigned to the row/record that did not have an expiration date attribute populated..... instead the mapping is loading both the dimension key for the previous version of the record (the expried one) and the new version of the record. The data being added to my fact table now has two rows per daily insert instead of one.... not a good thing.
    I'm thinking that we need to use the Effective Date somehow in the look-up so that the new items being added to my cube (fact table) are pointed to the new version of my record in our SCDII Dimension.....
    what's the trick to setting up the Type2 History Lookup tab?
    what does this radion button do then? "Use most current record"?
    Thanks,
    Ron

    There are several outstanding issues (bugs) against the SCD Type2 dimension functionality in OWB.
    It is possible your issue may be related one of these:
    5372855 - Key Lookup on SCD2 - Parent Values are not Returned (Dimension is populated twice)
    5845656 - Need Effective Dates For Initial Version and New Version of Records
    6017185 - Dimension Operator Property 'Type2 Gap' Not Working
    These bugs are scheduled to be fixed in the next major release of OWB as the SCD functionality is being improved/better documented.

  • Keep cardinality with lookup-operator?!

    Hi I am using a lookup operator to get values from a source table. The match criteria often results in multiple search results. (on purpose)
    What I want to do is, to take only the first searchresult of the lookup and put it in my destination table... so I need to get rid of the other ones. I need somethink like the first() function but I did not get it working in this context.
    How do I do that? Is there an operator for it? Any Ideas?
    Thanks in advance...

    In my case, if multiple rows are found, it is regardless which one is taken. I agree with you, that it is not a good idea in general to do that...
    The value look up operator is okay I think because it generates an outer join anyway... it is just a bit more clearer in the mapping than doing a join by hand...
    Okay you mentioned the deduplicator, I have a question to it, sth. thats not clear to me:
    the deduplicator distincts all input columns, right? How can I achive that it destincts only one column and selects the others too at the same time?? Something like:
    Name Surname Age
    Peter Pan 20
    Justin Prison 65
    John Smith 20
    and now "select distinct Age" but also get columns Name and Surname:
    Result should look like:
    Peter Pan 20
    Justin Prison 65
    Understand what I want? A distinct over all three columns would deliver all rows but I need only rows with distinct age, regardless wich one...

  • Retrival of Control Key of Operation & Table underneeth the structure

    Hi Experts,
       Right now i'm working on PP and PM related stuff, I'm in the middle of the project and stucked down at a point in how to retrive the control key of operation that triggered the update in production order: opoerational view. (CO03).
    Also i have a small question on how to findout the underlying table for a particular field(any field in a screen), when done F1 on that particular field the technical details says as table name but it is actuallya structure. So how should i find the table underneeth the structure where the particular data is being stored.
    Or how should i retrieve the data if i couldn't figure out the table, is there some way that i can retrie the data using the structure.
    Thanks for your contribution.
    Regards
    Rich

    Hi Rich,
    This is a common problem.One of the best and easy way is use the transaction ST05 for trace.lemme explain in detail.
    1.go to ST05 transaction
    2.switch trace on
    3.take your screen where the field resides
    4.enter value in this field and other required field
    5.then save the screen
    6.go to ST05.
    7.stop the trace
    8.click on display trace
    9.you will get a detailed log what all happend
    10.search the log with 'update' or 'insert' word or search with the field.
    11.you can find some table name.
    12.check that table contains the record which you saved.
    Sure this will help
    Another Way
    1.go to transaction se84.
    2.take ABAP dictionary
    3.go to Fields
    4.Give the field name in table field /structure field
    if you are lucky you will get in this
    Regards
    Shibu Kurian

  • How to perform merge operation using Data services designer?

    I am new here and new to Data Services Desinger as well.
    And currently, I want to do a merge operation using query transform or table comparison transform. But sadly, neither one of them is giving me what I want.
    So, wonder if you could help clarify if either one of them could achieve MERGE operation between and source and target tables?
    if positive, then how?
    PS:
    by MERGE, i mean, if data exists in target table, then only do update, else, do insert. same with the standard MERGE operation of oracle.
    If you need any more info, let me know!
    Thanks in advance.

    You can do this.
    You don't need the Tabe_Comparison transform actually.
    Just query the data you need and output the flow from your query to your target table.
    Then, you'll have to check the "Auto correct load" option: this will insert new lines and updates old ones. One checked, you can ckeck the "Auto correct load" checkbox.
    By default, BODS will know a line already exists based uppon the primary key columns of your target table. If you want to change the columns used to determine if a line should be inserted or updated, use the "Use input key" checkbox (and define some PK column in your query).
    Hope this helps
    Guillaume

  • Multiple key lookups to the same dimension

    I have a fact table that has columns old_item and new_item. These are both foreign keys to the items dimension.
    The source has old and new item codes. Therefore I want to do two key lookups to the item dimension.
    Using the key lookup function the generated code combines the two lookups into one thus giving the wrong result. That is the lookup become like shown below,
    INSERT INTO "FT1"
    "L1_ID",
    "L1_ID1"
    SELECT "DT1"."L1_ID" "L1_ID",
    "DT1"."L1_ID" "L1_ID$0"
    FROM "ST1" "ST1",
    "DT1" "DT1"
    WHERE ("DT1"."L1_ID" (+) = "ST1"."C1")
    AND ("DT1"."L1_ID" (+) = "ST1"."C2")
    Does anyone know how to get WB to produce the correct code?
    I can create my own transforms to do this but can it be done using the key lookup function?
    Thanks

    Jean-Pierre,
    I think Jeffrey didas you adviced. The problem is that even when you are using two different key lookup objects referencing the same table, the table is used only once in the select-statement, but with both conditions, instead of selecting the table twice, each with its own alias and conditions.
    Matbe that you can tell us which version does generate the correct code. I have have tested it again with OWB 9.0.3.35.1 (the latest version I believe), and still ran into this and many other problems.
    If you don't want to use a transformation, my advice would be not to use the key lookup object at all, but stick to the joiner object to join the lookup tables with the source table(s). The "drawback" is that you have to write the extra conditions yourself.
    Greetings,
    Rob Nijland

  • Creating Routings Operations using BAPI_ROUTING_CREATE

    Hello,
    I am creating Routing operations using BAPI_ROUTING_CREATE. The parameters which I am using are:
    PROFILE
    TASK
    MAT_ALLOC
    OPERATIONS.
    The group counter and group are given internal number assignment.
    In my case for 1 material number plant combination only 1 task exist. This can be considered as Header record. For this Header record there are multiple operations. My program calls BAPI only When any combination of MATNR or WERKS changes in MAT_ALLOC. It works fine for 1 operation but fails incase of multiple operations. The error is routing material assignment does not exist. I have checked for all madatory parameters in FM documentation. The BAPI when executed independently works fine but in program it fails.File format is
    Mat. No. Plant Key Date Status Usage Operation Number Work center Control Key Description val unit.
    I am calling BAPI only when Mat no or plant changes.Unitl then I append the data in internal tables.
    Passing the data in this format every operation is given Mat No and Plant, then y it is giving error routing material assignment does not exist.
    Please help in this regard.
    Thanks
    Khushboo

    Well actually that´s almost exactly what my task is as well.
    So what i do is:
    - reading the headdata of the given routing (the one which is to be copied)
    - reading the positiondata of the given routing (the one which is to be copied)
    then calling the BAPI_ROUTING_CREATE while exporting the headdata and the positiondata to the BAPI.
    It works perfect for the routing itself, but the BAPI doesnt create any operations while it displays a sucess message and NO errormessages.

  • Activating WCM for control key WCM (operation level)

    Hi Guys,
    I want to activate WCM in the PM order when i enter WCM control key in operations.
    I do NOT want to activate it using "Activate Work Clearance Management for Maintenance Orders".
    I have done all the config but maybe i missed something as the work approval icon is not appearing for WCM key in order.
    Can someone think of what i may have missed?

    I guess it wont solve my problem as the WCM is working at operation level in another system without it
    any more suggestions?

  • Can we use TCL commands in database triggers?

    Hi,
    GoodDay, This is Ramesh. Please let me know that, can we use TCL (Commit, Rollback & Savepoint) commands in our[b] DATABASE triggers? If so how..?
    Regards,
    Ramesh.

    Hi Ramesh, you're in the wrong forum; SQL Developer is a tool. Try SQL And PL/SQL...
    Regards,
    K.

  • Sharepoint 2013 copy/move operation using Content and Structure fails

    Hi,
    We had a recent upgrade from SP2010 to SP2013 environment. After the migration, we realized that the
    copy/move operations using Manage content and structure(sitemanager.aspx) is not working as expected, neither does this give any error nor is it stuck. In fact if I check the content and structure log I find the message as
    succeeded but file/item is not copied to the target. 
    The strange thing is that if I am performing this operation with Full Control permission level it
    does not work but if I do the operation as Site collection admin it works without problem. I know if sub-sites are to moved then one should be site col admin but in this case I am trying to move just documents or pages.
    Any help will be greatly appreciated.
    Thanks

    Hi Vineet,
    According to your description, my understanding is that copy/move operation using Content and Structure cannot work in SharePoint.
    I recommend to check if there are any custom fields in the source list/library and target list/library. If yes, delete the custom fields to see if the issue still occurs.
    Here is a similar thread for you to take a look:
    http://social.technet.microsoft.com/Forums/en-US/56d803d7-8573-4c29-9f6b-c63023941f44/manage-content-and-structure-cannot-move-or-copy-items?forum=sharepointgeneralprevious
    To copy or move files/items between sites, we need to have
    appropriate permissions on both sites.
    I recommend to check if the user has full control on both sites.
    Best regards.
    Thanks
    Victoria Xia
    TechNet Community Support

  • Key code 24 using control down - no longer works in 10.6

    I have a script that should open a dialog box to make a picture using Copernicus. the command I try to invoke is 'Control ='.
    here is the script.
    tell application "Copernicus"
    activate
    delay 2
    tell application "System Events"
    key code 24 using control down
    end tell
    end tell
    or alternative I tried:
    tell application "Copernicus"
    activate
    delay 2
    tell application "System Events" to keystroke "=" using control down
    delay 5
    end tell
    However both do not work, it does do nothing on - key code 24 using control down -.
    If I do a manual 'Control =' it works regardless if the Application is active or in the background.
    Has anything changed in 10.6 that this sort of code no longer works? How do I set it up for this to work?
    Message was edited by: ChangeAgent

    Pierre L. wrote:
    I have downloaded Copernicus 1.5.2 (Build 15) just to better understand the issue.
    is what I use.
    However, I am unable to find any “Control =” keyboard shortcut in any menu of that application. Does that shortcut belong to Copernicus, or is it a shortcut that you have added yourself in the Keyboard pane of the System Preferences?
    I added it replacing 'F7' for various reasons. however “Control =” works if I do it via the keyboard.
    As for me, after assigning a “Control =” keyboard shortcut to a TextEdit menu command, I have no problem invoking it from the following script.
    *tell application "TextEdit" to activate*
    *tell application "System Events"*
    *key code 24 using control down*
    *end tell*
    OK. as said it works using the keyboard, but not via the script. could it have something to do with Copernicus? I simply do not understand as to why it does not work using a script.

  • I have an MacBook Air, which keys do i use to connect it to a projector

    Which keys do I use to connect my MacBook to a projector

    When you physically connect the mac to a projector (which is turned on), it should automatically detect the projector and configure itself.  This can take a second or two. 
    System Preferences, Displays will provide you with a few options on how the external display will behave (e.g., mirrored).
    In the Display preferences if you press the option key a button "Detect displays" will appear which will allow you to manually force the computer to connect to a display.

Maybe you are looking for

  • If my macbook is version 10.4.11, what is the next operating system or version that I need to upgrade to?

    My macbook is version 10.4.11. I'm having a lot of issues with updating to the new itunes, and even connecting my iphone. I know it is time to ugrade my whole operating system, but i am unsure of which one I need to get. Is it snow leopard, lion, or

  • "project pro for office 365

    I was eagerly looking for a project management software and fortunately came across your office project pro 365 product While looking up on the website office, I had some questions rising concerning the "project pro for office 365" – 25 dollars/per u

  • RFC tabe into HTMLB Table.

    Iam looking for some guidance on rendering a BAPI values in a HTMLB Table. My application has a bean and a Dynpage.The jsp uses htmlb tableView's model which is myBean.model. Whatz the API for declaring and accessing Table view from the Bean. Thanx S

  • Problem after last xorg update

    I started getting this after the last xorg (2.16.0-1) (1.11.1-2) updates [ 1395.736] (II) UnloadModule: "evdev" [ 1395.736] (II) Unloading evdev [ 1395.737] Backtrace: [ 1395.737] 0: /usr/bin/X (xorg_backtrace+0x37) [0x81c00a7] [ 1395.737] 1: /usr/bi

  • HT4623 I just lost my iPhone 4, then someone picked it up & disable the tracking feature.

    Note I just lost my iPhone 4, then someone picked it up & disable the tracking feature in iCloud. If that person use this stolen iPhone, can apple store trackiong him & blocked him? or even reset the phone status to default. Serial # of this iPhone i