Pluggable mapping in ODI?

Hi guys!
I was wondering if ODI has a similar functionality to OWB pluggable mapping? If yes please tell me how ;)
With regards,
PsmakR

Hi,
You can find a great blog post about ODI User Functions @ http://blogs.oracle.com/dataintegration/2009/09/odi_user_functions_a_case_stud.html.
It should give you enough details, the User Functions are also covered in the ODI documentation.
Thanks,
Julien

Similar Messages

  • Pluggable Mapping causing VLD 1600 validation error

    We are using OWB client 11g R2 on windows. I am trying to use the pluggable mapping functionality to use for our reference data lookups, whereby we want to retrieve full descriptions in several languages from the reference data table. The standalone mapping takes in two parameters in the input signature, both NVARCHAR2, a reference type and reference code to perform the lookup. There is then a key lookup whose output (5 NVARCHAR2 values) goes to an expression which has a CASE statement to evaluate the results before passing them to the output signature.
    The problem is when using the pluggable mapping in a normal mapping it does not validate, and I am getting the VLD-1600: Lookup Condition for Key Lookup REF_DATA_APEX is blank. error. The key lookup of course does have a Lookup Condition.
    The mapping is a simple one, taking a source and mostly mapping directly to the target. It is set based only. I have one source attribute being passed to the pluggable mapping along with a constant, and the output is passed to an expression (which doesn't actually do anything, but without this I got API8003 error when connecting the output attributes to the target attributes).
    Is there something I am missing in how to implement this feature ?

    Hi,
    I am having the same problem with pluggable mapping and lookup operator, when mapping is syncronized it gives error VLD1108. I believe it is a bug of OWB 11.2.0.2.
    Did you manage to resolve it?
    Thanks,
    Alex

  • What is use of Active mapping in ODi interfaces?

    hi,
    What is use of active mapping in ODI interfaces ?
    What are the advantages of using active mapping?
    If active mapping is not used in ODI ,would it affect ODI code in some sense?
    Thanks,
    Mahesh

    MaheshGx wrote:
    hi,
    What is use of active mapping in ODI interfaces ?This ask ODI to generate for for the mapped column . Other wise no code will be generated .
    What are the advantages of using active mapping?If you want to generate code use active mapping .
    If active mapping is not used in ODI ,would it affect ODI code in some sense?
    It will not generate the code
    Thanks,
    Mahesh

  • EXPLAIN PLAN with pluggable mapping

    Dear Folks,
    I have a mapping with a pluggable mapping included. When I try to get the EXPLAIN PLAN TREE I receive an error: 'ORA-00904: "FULLPACKAGENAME"."CONSTANT_0_SITUATION_1":invalid identifier'.
    The EXPLAIN PLAN REPORT says in the first line: Error: cannot fetch last explain plan from PLAN_TABLE
    When I search for 'CONSTANT_0_SITUATION_1' I can find things like:
    (SELECT
    "WH_JOIN_GSMNMBR_PORTINGDATA"."GSS_VOI_ID" "FACT1_ID",
    "WH_JOIN_GSMNMBR_PORTINGDATA"."BEGINDATE" "FACT1_BEGINDATE",
    "WH_JOIN_GSMNMBR_PORTINGDATA"."ENDDATE" "FACT1_ENDDATE",
    "INGRP2"."FACT1_MIN_BEGINDATE" "FACT1_MIN_BEGINDATE",
    "INGRP2"."FACT1_MAX_ENDDATE" "FACT1_MAX_ENDDATE",
    FULLPACKAGENAME."CONSTANT_0_SITUATION_1" "SITUATION_1"
    What is 'FULLPACKAGENAME'???
    I can validate my mapping and this is OK. I checked the pluggable mapping again and again, all seems to be right. I can run the mapping and it works. Just need to tune it.
    I'm working with OWB 11.1 on a 10.2.g DB
    Can please someone help me?
    Greetings
    S.

    Hi,
    if you generate the sql in the mapping editor, the sql may not run directly. FULLPACKAGENAME will be replaced my the mapping name during deployment. The constants you define in the mapping will be pl/sql-variables of that package.
    To make the sql work, you have to replace the FULLPACKAGENAME.xxx expressions with correct values manually.
    Do you have the most recent patch installed? In owb 10gr2 the values from the constants as well as the default values of the mappings are set correctly from version 10.2.0.3 on.
    Regards,
    Carsten.

  • How to pass mapping input paramters to a pluggable mapping?

    Hi,
    I'm using OWB 10.2.0.3.
    How can I pass the mapping input parameters to a pluggable mapping?
    I know that I can use the pluggable mapping input signature, but this means I always need a joiner in the pm before I can use the parameter in a filter, for instance. This is not really convenient.
    Any help would be appreciated!
    Regards,
    Carsten.

    Hi,
    I'm using OWB 10.2.0.3.
    How can I pass the mapping input parameters to a pluggable mapping?
    I know that I can use the pluggable mapping input signature, but this means I always need a joiner in the pm before I can use the parameter in a filter, for instance. This is not really convenient.
    Any help would be appreciated!
    Regards,
    Carsten.

  • Vld-1134 on pluggable mapping after importing MDL

    After importing an MDL file and setting the oracle modules to the correct locations, I can deploy just anything in my target module, except mappings that include a pluggable mapping that references a view, which is correctly deployed on the target module ( validation raises vld-1134). Referencing that view directly from any mapping doesn't raise any problem.
    Are there aditional configuration steps required to succesfully validate thoose mappings ?
    Thanks in advance,
    Pedro Almeida

    Can you try synchronizing (inbound) the view to the pluggable mapping? Then try validating.
    Cheers
    David

  • Pluggable mapping problem

    Hi,
    I have a src table which needs to be mapped to a target, but through a pluggable mapping which contains expressions to calculate an extra field I came to the following problem. The output signature of the Pluggable mapping cannot be combined with the source data, so i used a joiner and it generates something like this:
    SELECT
    "MYTABLE"."THEPK" "THEPK"
    "MYTABLE"."NAME" "NAME"
    "MYTABLE"."STARTDATE" "STARTDATE"
    <function to create ENDDATE field> "ENDDATE"
    FROM
    "MYTABLE" "MYTABLE"
    "MYTABLE" "MYTABLE_1"
    WHERE ....
    I don't want to join them, they must come from the first table, but I cannot combine them without a joiner. It works when I make it without pluggable mapping but it's a lot of redundant work! Is there another way to fix this?
    Thank you
    Den
    ps: I am using OWB 10g R2 (the newest version)
    Message was edited by:
    user537381

    Hi,
    See this thread - Pluggable Mappings
    This might be solution for your problem. IMHO, one should search this forum before posting .
    HTH
    Mahesh

  • MMM 1064 Error when adding pluggable mapping

    OWB ver 11.2.0.1
    9802120 patch has been applied, but not exactly which "version"
    Created a standalone pluggable mapping. It is pretty basic: Source table -> Filter ->Aggregator -> Subquery Filter -> Output Signature.
    When I attempt to add the pluggable mapping to an existing mapping (either by dragging the PM from the Projects Navigator, or going through the Component Palette), I get the following error:
    MMM 1064: Value 98F36D...E390EC not valid in domain IN_MATCHING_ATTRIBUTE
    Any ideas on how to fix this?

    Sorry for the delay, but another fire sprang up.
    I created a pluggable mapping consisting of a table and filter and was able to drop it onto another mapping (I didn't go further and try and connect it). Went back to the pluggable mapping, deleted the lines from the filter to the output signature, and added the aggregate and sub-query filter. I get the error when the revised pluggable mapping is dropped onto another mapping.
    For grins, I got rid of the sub-query (it was an IN type), and did what I wanted "old-school" - brought in a second instance of the table, and joined it to the aggregation. I was able to add this version to a mapping.
    Client hasn't applied the 11.2.0.2 patch, so I am guessing it is something fixed in the patch.

  • Pluggable Mapping

    Hi,
    Can anyone have any example of using pluggable mapping and how we can make mapping generic
    by using pluggable mapping.
    Regards
    Ani

    Pluggable mappings can be used to
    - split a large mapping into smaller components, can be useful to test each part or to make a complex mapping easier to understand.
    - include a reusable piece of logic in multiple mappings.
    Use mapping input parameters to pass values and make generic.

  • Pluggable Mapping Won't Fully Synchronize

    I'm hoping there is perhaps just a config setting of some kind that governs how a pluggable mapping is embedding in a real mapping that is causing my problems.
    The situation:
    -Mapping A is my actual mapping.
    -Mapping B is my pluggable mapping which implements a whole mess of stuff, including a very large and complex Joiner operator.
    -Mapping A uses pluggable mapping B.
    The problem:
    I recently discovered that I had some errors in the join condition used by the Joiner in pluggable mapping B. I modified the join condition, etc, and saved. I then went into Mapping A and did an inbound sync on the pluggable mapping operator so that mapping A would pick up the changes I made to the join condition in pluggable mapping B.
    Mapping A does not pick up the changes to the join condition when in generates. I have inspected the generated SQL by hand to confirm. I'm now afraid that syncing a pluggable mapping operator only picks up signature changes? But it seems absurd that when using a pluggable mapping in a regular mapping, the internals of the pluggable mapping would get so fully embedded before even generating, and that the only thing you can later change without having to delete and re-add the pluggable mapping operator is the signature?
    Does anyone have any insight? I would really appreciate any thoughts. In reality, this pluggable mapping is used not by one, but by many regular mappings, and implements some really ugly logic that has a very wide input and out signature. So I really want to avoid that obvious solution of having to simply delete the pluggable mapping operator from the main mappings and add it again (which I'm darn sure would work), and have to reattach all the connections. It would take hours and hours.
    Thanks in advance for any help.
    -John

    Well David, I owe you an apology for wasting both our time.
    I have looked at it with a pair of fresh eyes this morning, and the problem was mine. As I think I mentioned in my original post, this pluggable mapping is actually used by a large number of regular mappings (about 15). Each of these regular mappings handle a different step in the loading a primary target table.
    In my confusion, I had missed a sync in one or two, and had apparently been bouncing back and forth between one I had synced, and one I had not when looking at generated code. This caused me to think the syncing and generation were not occurring properly.
    Too many late hours I'm afraid...
    So again, I apologize for the wild goose chase, but really appreciated your input. It appears that the problem is solved (or never even existed) !

  • Pluggable mapping access to others

    I created a pluggable mapping in the pluggabl emappings folder. I am able to use it. but I would like others to look at my pluggable mapping and they can use it also. How do I do that. In the book it says if I put in the folder which I did and in the security section for the folder I gave access to all users. still others are not able to see my mapping.

    To start with I created the pluggable mapping under standalone and then the team decided that the pluggable mapping should be used by everyone. I then copied it to the folder by creating a folder by reading the docs. Still non one is able to see my pluggable mapping. projects are different the security on my preferences is set to minimum.

  • Tune a mapping in ODI

    How to tune a mapping in ODI ?
    What is low level ELT and high level ELT in ODI?
    What is Data migration in ODI ?
    Thanks

    How to tune a mapping in ODI ?
    Choose between various knowledge modules (KMs) for loading and integration. Each one performs differently based on the source/target technology and the type of data that you're dealing with. Some perform better than others depending on the situation. Some KMs use set-based transactions, others use PL/SQL blocks to commit data in small batches.
    Choose where ODI should execute each join/filter/transform. You can usually choose between the source, target or a separate staging area. What you choose here can influence how much source data you will extract and process.
    The ODI KMs utilize temporary tables to perform the loading, checking and transform operations and will create the necessary indexes for performance. It will also analyse these tables as part of the flow to enable the DB engine to generate accurate execution plans.

  • Synchronizing  Pluggable mapping in main map

    Hi,
    I used a pluggable mapping in a map . If I do any changes in the pluggable map,
    those are not reflecting in the map where that pluggable map is used. To reflect I opened the map and I used synchronise option . If I use that pluggable map in many maps , I have to open each and every map and selectiing the option synchronsie.. Is there any alternative way to synchronise the pluggable map with the main map without opening the map...
    Regards,
    Sivarama

    Is this blog down? Or do I need special access?
    Actually I hit the same problem... If I do it like this:
    OMBSYNCHRONIZE PLUGGABLE_MAPPING 'PM_MAKE_ITEM_LEVELS' TO MAPPING 'MAP_DWH_ITEM_MASTER' OPERATOR 'PM_MAKE_ITEM_LEVELS' USE (RECONCILE_STRATEGY 'REPLACE', MATCHING_STRATEGY 'MATCH_BY_OBJECT_NAME')
    I've changed the context to my project and to my module (DWH), which consists the mapping and get the following error:
    OMB07003: cannot locate PM_MAKE_ITEM_LEVELS of type PLUGGABLE_MAPPING: OMB01065: Object type PLUGGABLE_MAPPING is not valid for folder DWH
    I will be thankful for every hint!
    Thanx in advance!
    Steffen

  • Pluggable Mapping: java.lang.ArrayIndexOutOfBoundsException: 5

    Hi,
    I'm using OWB10gR2.
    I got a "java.lang.ArrayIndexOutOfBoundsException: 5" when I try to insert a Pluggable Mapping (which is from a licensing point of view an expensive option).
    The only thing I can do in such a case is to exit witout being able to save.
    Has anyone an idear how this can happen?
    Would be nice if application errors would be a bit better handeld by the new OWB release.
    The exact error I got is:
    java.lang.ArrayIndexOutOfBoundsException: 5
    java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException: 5
         at oracle.wh.util.expr.WBBindableExpression.validate(WBBindableExpression.java:281)
         at oracle.wh.util.expr.WBBindableExpression.getTemplate(WBBindableExpression.java:307)
         at oracle.wh.repos.impl.mapping.CMPMapAttribute.internalUnbindExpressions(CMPMapAttribute.java:1207)
         at oracle.wh.repos.impl.mapping.CMPMappable.internalUnbindExpressions(CMPMappable.java:592)
         at oracle.wh.repos.impl.mapping.CMPMappable.internalUnbindExpressions(CMPMappable.java:592)
         at oracle.wh.repos.impl.mapping.CMPMapOperator.internalUnbindExpressions(CMPMapOperator.java:1297)
         at oracle.wh.repos.impl.mapping.CMPMapOperator.beforePersist(CMPMapOperator.java:1410)
         at oracle.wh.repos.pdl.foundation.DirtyCache.persist(DirtyCache.java:422)
         at oracle.wh.repos.pdl.foundation.DirtyCache.persist(DirtyCache.java:279)
         at oracle.wh.repos.pdl.foundation.CacheMediator.postChanges(CacheMediator.java:520)
         at oracle.wh.repos.pdl.foundation.CacheMediator.postChanges(CacheMediator.java:513)
         at oracle.wh.repos.pdl.foundation.CacheMediator.commit(CacheMediator.java:2079)
         at oracle.wh.repos.pdl.transaction.TransactionManager.commitGlobalTransaction(TransactionManager.java:340)
         at oracle.wh.repos.pdl.transaction.TransactionManager.commit(TransactionManager.java:456)
         at oracle.wh.ui.console.WorkBenchController.doRealcommit(WorkBenchController.java:1153)
         at oracle.wh.ui.console.commands.CommitCmd.performAction(CommitCmd.java:24)
         at oracle.wh.ui.editor.WindowHelpEventHandler.handleSaveAll(WindowHelpEventHandler.java:239)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at oracle.wh.ui.editor.listener.ReflectListener.invokeMethod(ReflectListener.java:41)
         at oracle.wh.ui.editor.listener.ReflectActionListener.actionPerformed(ReflectActionListener.java:33)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
         at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
         at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231)
         at java.awt.Component.processMouseEvent(Component.java:5100)
         at java.awt.Component.processEvent(Component.java:4897)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
         at java.awt.Container.dispatchEventImpl(Container.java:1613)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 5
         at oracle.wh.util.expr.WBBindableExpression.validate(WBBindableExpression.java:246)
         ... 46 more

    Hi Carsten,
    Thanks for your feedback.
    I syncronised everything, the pluggable mapping as well as the mapping in which I used this pluggable mapping. But I still got the error.
    The only workaround I found was to recreate the pluggable mapping.
    I don't understand how such a exepnsive software generates a Java error instead an error which explains what has to be corrected.
    Regrads
    Maurice

  • Can a pluggable mapping be used by more than one project.

    I have a common mapping which 2 projects use it. If I deploy in one project the otherprojects mapping is getting Invalid. Can I make this mapping a pluggable mapping and then use it in 2 projects will this concept work.
    Thanks

    I have a common mapping which 2 projects use it. I donot think mapping can be common across the project . You can create the same mapping twice in both project.
    So donot know how you are using same mapping which 2 projects use it.
    If I deploy in one project the otherprojects mapping is getting InvalidAs i told create the same mapping in Both the project and use it.
    Can I make this mapping a pluggable mapping and then use it in 2 projects will this concept work.You can not share Pluggable mapping across the Project.
    Cheers
    Nawneet
    Edited by: Nawneet on Apr 12, 2010 10:51 AM

Maybe you are looking for

  • Lightroom 3.6 crashes every time I open it.

    I just updated my Lightroom to 3.6.  I am running Windows 7, 64 bit.  Everytime I open Lightroom and try to go to Develop, it crashes.  I am currently unable to use the program at all. Any suggestions?

  • DREAMWEAVER - HOTKEYS PROBLEM!!!

    I am pissed. I buy purchased a new keyboard extra, nothing. Format on PC and new install, nothing. IT IS NOT WORK with -CTRL+W (closed) -CTRL+S (SAVE) -CTRL+Z (undo) DOES WORK: -CTRL+C(COPY) -CTRL+P (PASTE) WHY? The problems is long, this time I writ

  • Apple symbol flashing on and off

    Phone won't turn on and apple symbol flashing on and off

  • Xcode Open my App when Its Icon is clicked?

    I made a simple app using xcode, but it has one issue. When I close its only window, I can't open it again. If I click the icon, nothing happens. How do I make it so the window opens every time I click the icon in the dock? Thanks

  • InterMedia Web Agent problems...

    I have Oracle 8.1.5 and OAS 4.0.8 on an NT machine. I have installed interMedia Web Agent, having shut the OAS services down first, configured the application as described in the doc and restarted all services. I have one listener for OAS on port 90.