Solution for the ODI function call

Hi Experts,

I'm using ODI 11 g.

Currently I use oracle procedures to call a function in ODI.

just like "Select package_name.function_name from dual" I use this query in the variables of ODI. The output of the function
I use in the mails from the ODI.

So, for this... Assume that for any change that I have to go to an Oracle package and change the logic of operation... and then promote this
production... which takes a moment for me.

So I want to write this function inside the variable of the ODI and send the output to mail ODI... While I don't need DB side to promote
the production code on all the changes.

Please let me know if this solution is good or not.


Thank you
Lony

Hello

in my opinion is good have any logic inside the ODI. But it depends on the complexity of the logic and the frequency of your change. If you change the logic once for the year, it is completely unnecessary to do inside your ODI.

A good compromise would be to put a step in package_name.function_name in your parcel.

Tags: Business Intelligence

Similar Questions

  • How does the library function call Labview? Can I emulate using C++?

    Hi all. I recently finished writing a dll CUDA for LabView, and now I'm in the steps of optimization of code, memory management, etc. BUT since my code depends on the entries of Labview (lots of data under types of specific data as table manages and Clusters labview) I can't use the CUDA Profiler or the Profiler VC ++ on the DLL. What I intend to do runs labview and then out of all data entry for the DLL in a binary file and then add an additional function in my code that will read in the binary file, allocate and assign variables to their respective positions, and then call the specific DLL function in Labview. In the end, this miniature function will act as the library function call to my specific group of data entries.

    In any case, I started to make this purchase all my data entry of cluster and it comes out in a binary file. And then I started the initialization of the handles of labview, allocating memory and begins to write the binary data in the memory and it works for integers (ints), floats, etc., but I'm confused on how it works with table handles!

    Some examples of code:

    Sets the Handle for table 1 d for INT
    typedef struct {}
    int length;
    int val [1];
    to access the value in a row-online val [Online]
    } Array1dInt, * Array1dIntHandle;

    int main()
    {
    Array1dIntHandle x = new Array1dInt *;
    (* x) = new Array1dInt;

    ifstream file ('TESTDATAIN.dat', ios: in | ios::binary);

    If (file.is_open ())
    {
    file ((char *) &(*x)-> length, sizeof;)
    file ((char *) &(*x)-> val [0], sizeof (int) *(*x)-> length);

    LabviewSpecificFunction (x);
    leader. Close();
    } else
    {
    < "file="" did="" not="" open!"=""><>
    }
    return 0;
    }

    __declspec(dllexport) LabviewSpecificFunction (Array1dIntHandle x)
    {
    ...
    }

    However, my program crashes when the table is nominally big, and it is expected, because if we look at the Array1dHandle, it has allocated only enough memory to 1 item of value! YET, somehow, in its magical and mysterious labview is capable of making val [1] be val [HOWEVERMANYYOUWANT], even if C++ 101 says that val [1] is a constant pointer, and even if I dynamically allocated memory another somwhere, I would never be able to put these data in this round!

    Can you explain, or maybe even write example on how I can fool my program into thinking that the binary code comes from labview, so I can then run my program independent of allowing me to profile the functions inside labview?

    I hope that this question is clear and my sample code is also clear, but I'm happy to answer any questions that relate to this.

    Thank you all!

    I think that I thought about it.

    Array1dIntHandle x = new Array1dInt *;
    int tempsize;
    file ((char *) & tempsize, sizeof;)
    (* x) = (Array1dInt *) malloc (sizeof (int) + sizeof (int) * tempsize);
    (* x)-> length = tempsize;
    file ((char *) &(*x)-> val [0], sizeof (int) *(*x)-> length);

    Well enough, you will need to make the handle, and then make a new Array1dInt * for him, then read in the length of the array in a temporary variable. Then use this information to then malloc memoery quantity you need for the table and pass this place on the handle. Now the handle will point to the size of the memory and you will be able to access the memory in the format, you've done the handle. Badabing badaboom

  • Solution for the mutation of table of error when using triggers

    Hello

    Could you please give the solution for the error table mutation during the use of triggers. I'll give you the simple scenario here,

    I created a trigger on the employees table, whenever all DML operations takes place in the employees table, it must run the trigger body. I intentionally used also of the employees in the body of the trigger table. Please give me the solution.

    Triggering factor:

    create or replace trigger test_trigger

    before you insert or update or delete employees

    for each line

    declare

    an employees.first_name%type;

    Start

    Select first_name from people where job_id = "AD_PRES";

    end;

    DML statement:

    Update employees set salary = 20000 where job_id = "AD_PRES" (I run this query)

    Error message:

    ORA-04091: table HR. Is the transfer of EMPLOYEES, the function of triggering/can not see

    ORA-06512: at "HR. TEST_TRIGGER', line 4

    ORA-04088: error during execution of trigger ' HR. TEST_TRIGGER'

    Can anyone tell, in what other scenarios, we get this error or recursive table mutation?

    Thanks in advance

    Hello

    When you create a trigger on a table, you cannot edit/query this table the trigger is not completed.

    You can use

    (1) transaction of Pragma autonomous

    (2) instead of row-level trigger, you have statement-level trigger

    (3) to 11 g, try with COMPOSITE trigger

    Try below to avoid it (a solution):

    create or replace trigger test_trigger

    before you insert or update or delete employees

    for each line

    declare

    PRAGMA AUTONOMOUS_TRANSACTION;

    an employees.first_name%type;

    Start

    Select first_name from people where job_id = "AD_PRES";

    COMMIT;

    end;

  • Create parameters for the WriteData function

    Hello

    How would create parameters for the writedata function to populate the html code?

    CODE:

    Function GetCluster {}
    and {{foreach ($Datacenter (Get-Data Center))
    foreach ($Cluster in (Get-Cluster-location $Datacenter)) {}
    New-Object PSObject-property @ {} TypeName
    vCenter = $Datacenter.Uid.Split("@") [1]. Split(":") [0]
    Datacenter = $Datacenter.Name
    Cluster = $Cluster.Name
    HAEnabled = $Cluster.HAEnabled
    DrsEnabled = $Cluster.DrsEnabled
    DrsMode = $Cluster.DrsMode

    }
    }
    }
    # Function compiles the data transmitted by the GetCluster function in HTML table format
    Function writedata {
    param ($vCenter, $Datacenter, $Cluster, $HAEnabled, $DrsEnabled, $DrsMode)
    # < td > < Center > < b > < of police = "Tahoma" > $Datacenter < / police > < / b > < / center > < table


    {$tableEntry = "< tr > < td > < font ="Tahoma">$vCenter< / fonts > < table > < td > < Center > < b > < of police ="Tahoma">$Datacenter< / font > < / b > < / center > < table > < td > < Center > < b > < of police ="Tahoma">$Cluster< / fonts > < / b > < / center > < table > < td > < Center >"} < b > < of police = "Tahoma" >$HAEnabled< / fonts > < / b > < / center > < table < td > < Center > < b > < font = "Tahoma" >$DrsEnabled< / police > < / b > < / center > < table < td > < Center > < b > < font = 'Tahoma' color 'dark blue' = >$DrsMode< / fonts > < / b > < / center > < table > < /tr ' > '.
    Add-Content, $fileName $tableEntry
    Write-Host $tableEntry}

    Thank you

    You specify when you call the writedata function, so I guess it's in the function Get-Cluster.

    You can pass the object you create in the GetCluster function as a parameter.

    Try something like this

    Function GetCluster {
        & { foreach ($Datacenter in (Get-Datacenter)) {
                foreach ($Cluster in (Get-Cluster -Location $Datacenter)) {
                    $clusObj = New-Object -TypeName PSObject -Property @{
                        vCenter = $Datacenter.Uid.Split("@")[1].Split(":")[0]
                        Datacenter = $Datacenter.Name                    Cluster = $Cluster.Name                    HAEnabled = $Cluster.HAEnabled                    DrsEnabled = $Cluster.DrsEnabled                    DrsMode = $Cluster.DrsMode
                    }
                    writedata $clusObj            }
            }
        }
    }
    
    # Function will compile the data passed from the GetCluster Function into HTML table format
    Function writedata {
        param ($object)
    
        $tableEntry = "$($object.vCenter)" +
            "
    $($object.Datacenter)
    " + "
    $($object.Cluster)
    " + "
    $($object.HAEnabled)
    " + "
    $($object.DrsEnabled)
    " + "
    $($object.DrsMode)
    " Add-Content $fileName $tableEntry Write-Host $tableEntry}
  • I found the solution for the problem of sound-acpi with Satellite P100-219

    Hello

    I found the solution for the problem of sound-acpi with Toshiba P100 (it works with P100-219 at least). I can provide the source modified and compiled table DSDT, but I would like to know if it is possible to get these changes in the next update of the BIOS?

    See you soon,.
    MIK

    Hi Mik

    As you know that it is not possible to find info on the next BIOS, especially if you want to have some information about the Linux operating system. Just wait and see if some forum users pointed out something on the subject.

  • How to change the switch case sub - VI for the Subvi all calls

    Hello

    to make the code more elegant and more reasonable, I source code, often called a Subvi. The Subvi is a box structure. If I add new cases of this Subvi thereafter, I must renew all selectors of Enum for the Subvi handmade calls. It's really annoying.

    Is it possible to pair the picker to the slot - VI for a change in the number of cases will affect all selectors automatically?

    Best regards

    Carsten

    Thank you very much. It works just perfect.

    Carsten

  • Does anyone have a solution for the use of Bible Illustrator 3.0 MS8 and MS7

    Original title: program programs Application Applications compatibility.

    Does anyone have a solution for the use of Bible Illustrator 3.0 MS8 and MS7

    What are the requirements of system for this program?

    What version of Windows it says on the package, it was designed for?

    If its designed for an earlier version of Windows such as Windows 95 or Windows 98 or XP, then it is probably incompatible with Windows 8.

    If the product packaging indicates anything in the 1990s OR early 2000s, I am afraid that this is not something that is guaranteed to work with Windows 8.

    You can try the following average time.

    Point to the installation files where they are.

    Right-click on the configuration file, and then click "troubleshoot compatibility".

    Wait, it detects the problem.

    Click on the option "worked in an earlier version of Windows.

    Select Windows 7 RTM or better Windows Vista SP2

    Click next

    Click Start the program, wait, it installs

    When the installation is complete, click Finish and save the settings.

  • How can I change the size of the font for the comments/text call out boxes?

    How can I change the size of the font for the comments/text call out boxes?

    Hey sylviec10386621,

    Once you add any call box, select this option and press (Ctrl + E) to open its properties.

    Try this at your end and let me know how it goes.

    Kind regards

    Ana Maria

  • I searched for a solution for the problem I was on Win 7 Pro Service Pack 1 in the links on an open Adobe Acrobat file will not open in my browser Firefox 33.0.2. The error I get is "Acrobat could not run the web browser.  Unknown error. (123).

    I want a solution for the problem I was on Win 7 Pro Service Pack 1 in the links on an open Adobe Acrobat Pro 10.1.12 file will not open in my browser Firefox 33.0.2. The error I get is "Acrobat could not run the web browser.  Unknown error. (123).

    You can try a repair of your Acrobat installation. Maybe, at least it's a start toward a solution.

  • Registration for the web function has stopped working in my copy of photoshop elements 12.  I get this message "the operation could not be completed.  The system cannot find the path specified"reset preferences was not fixed.

    Registration for the web function has stopped working in my copy of photoshop elements 12.  I get this message "the operation could not be completed.  The system cannot find the path specified"reset preferences was not fixed.

    My os is windows 7.  elements of 12 worked fine for several months and then save for web stopped working

  • How to use the node function call library for a function in the dll with the data SUB type

    Hi all

    I would ask for your kind help

    I am facing a problem with the call library node.

    I have a C++ (stdcall) function, which has Sub as data type

    XXXX error code (hwnd, lid, getValue, * Sub data1, * Sub data2)

    data1 and data2 types are constantly changing based on the value of 'getValue '.

    Mainly I can use the call library node several times and adapt each node according to the types of data data1, data2 and extract the values and use in the code. Here is no question. Real question is:

    My question:

    How can I use a node of library time call and make a case according to the 'getvalue', who will control the data1, data2 data type. Here I really seeking solutions.

    My tests:

    I used varaints as entry to the libray call node of the data1, data2 and selected parameters in the call libraby node as "Adapt to type. Here labview just crashed.

    I appreciate your suggestions to feedbackand.

    Thank you

    Karine

    You must allocate enough space for data1 and data2, and then pass a pointer to this space. An easy way to do this is the function to initialize table. Set the U8 type and size for the number of bytes required. Pass this array to the function as a pointer of table data.

    After the function call returns, you need to extract the data in the table. You can do it manually, but a simple approach is to use the array of bytes to a string. Then, in a housing structure, use Unflatten chain to convert the string to the correct data type. This method also converts the "endianness" which will be probably necessary; Be sure to only set all entries for unflatten correctly.

  • How to implement a callback to the help function call library function node in LabView?

    I try to call a fuction from a SDK.dll library by using the node call library feature. The SDK has been provided to

    me and I don't have the source code, just the .dll and .h files.

    The SdkSetPropertyEventHandler function has a function of recall as one of its parameters. How to apply the

    callback using the NSI node? I'm a good programmer LabView but this is my first time using the library to call

    Function node. I read all the info I can find on the web site of NOR and the discussion Forum, but can not understand

    This one out. I'm using LabView 8.6.

    The deacribes SDK.h function as:

    Function: SdkSetPropertyEventHandler

    (SdkSetPropertyEventHandler) SdkError SDKAPI
    SdkCameraRef inCameraRef,
    SdkPropertyEvent inEvnet,
    SdkPropertyEventHandler inPropertyEventHandler,
    SdkVoid * context);

    //
    Description:
    Registers a callback function to receive the status
    change the notification events for the States of property on a camera.
    //
    Parameters:
    In: inCameraRef - designate the object camera.
    inEvent - designated one or all the events will be completed.
    inPropertyEventHandler - designate the pointer to the callback
    function to receive the camera property-related events.
    inContext - designated application information must be passed
    way to the callback function. All the data necessary to
    your application can be passed.
    Output: no
    //
    Returns: A sdk errors.
    -----------------------------------------------------------------------------*/

    A separate header called SDKTypes.h file contains the following data:

    typedef SdkUInt32 SdkPropertyEvent;
    typedef SdkUInt32 SdkPropertyID;
    typedef void SdkVoid;

    typedef struct __SdkObject * SdkBaseRef;
    typedef SdkBaseRef SdkCameraRef;

    /*-----------------------------------------------------------------------------
    SdkPropertyEventHandler
    -----------------------------------------------------------------------------*/
    typedef SdkError (SDKCALLBACK * SdkPropertyEventHandler))
    SdkPropertyEvent inEvent,
    SdkPropertyID inPropertyID,
    SdkUInt32 inParam,
    SdkVoid * context);

    Thanks for your help.
    Alejandro

    Andrew_E wrote:

    Hi Rolfk,

    You are absolutely right. This article describes what you were talking about? I'm just trying to get as much information as possible on this thread if the solution is easier to find for the future. Thank you.

    Yes, but I find the idea of using .net to call a LabVIEW VI as callback function C a bit as using a roll of Steam ironing your pants. Why do it? Well the steamroller has extra security guards that make it less likely that you'll break your pants in the process, but it's not elegant IMHO.

    Write a C DLL that translates between a C callback and a user event LabVIEW using the PostLVUserEvent() of the interface of the kernel to run LabVIEW function seems so eleganter for me. Yes, it's a bit of programming in C, but good!

    Rolf Kalbermatter

  • E3000 with the same problems on &amp; more here, but no expert solution for the 2 main problems

    1 - with regard to support USB connected hard drives that will not transfer data & like to come & go quite often of the view.

    Everything seems like a joke to me, when I read that a lot of people have hard drives USB who worked for a year, & when it stops working or acts upward, we all have a test to see if it connects & works very well on our other connections PC/Laptop & the only advice given, this firmware is upgraded or a list of hard drives that have been tested and work on the E3000.

    2nd - my other problem is that my E3000 now decides of its own to disconnect wireless & cable Communication and then reconnect alone, whenever you feel.

    What makes angry of this problem is that it is abundant in the Forums & I tried all the fixes, but I still have the same problem & sound as good as this device of 2 year, Max is grilled.  As is the case when there is a loose connection that overheated, in what thread or welded metal move when heat is added & move at the time where the heat is removed.

    PROBLEM:

    My touch 1 Maxtor (from the approved list) is connected and playing now you see me & now you don't game.  If I ever try to import or to export any image file or music, the Communication goes & then sometimes will return its own. Working with Game Consoles, when something begins to work intermittently, then it is a hardware problem or software with the device.  It is not a user error, when it worked fine before.

    SOLUTION?:  This is why we are all here. Thanks to a landmark of expert for the same problem that many of us have?

    How about this solution. Why not let all E3000 owners send there wireless routers is not working towards a credit for a new operating model nice. I think that we would all save a lot of headaches & get rid of 25% of all calls for help on this forum.

    Thank you for your attention,

    BigdogTim7

    PS. Please give us/me expert advice on how to solve the problem.  If nobody knows the answer, then Cisco/Linksys looks really bad for selling a router high of $$$, being touted for the games and files sharing multimedia home & it only at this stage.  If it should be recalled, will bring up by all means, or come up with a fully functional firmware.

    Thanks again & hope to hear news good & productive, cause I am so tired of playing with this E3000 & will more than likely stay away from your product for any & all future purchases, no matter where you are ranked (E3000 was 3rd & best prices of the top 3 when I bought it).

    Well, I'm here, not having heard an assumption about my problem, but to get an opinion of experts & solution to my problem, but also all other users of the same or very similar problems.

    I am now a HAPPY 'Belkin N600 DB' owner for only $79.99 @ Wal-Mart/Radio Shack. This new does much more than the Cisco E3000 wireless router & even changed my Modem 100 MB (green) flow out of 1000 GB (Amber Light).

    So, so HAPPY now!

    Bigdogtim7

  • HP envy17: windows startup looking for the missing function

    I had to update my windows today. Thereafter, whenever I go to th windows app screen my search function is missing. where at - it go?

    Hi @treblawail,

    Thank you for visiting the HP Forums! A place where you can find solutions for your problems with the help of the community!

    I stumbled upon your post on the laptop and wanted to help you! I looked in your question about your HP ENVY 17 laptop and problems with Windows search starts missing. You can try to use the Windows Update Troubleshooter to fix updates that do not come through Windows.  Please restart the laptop twice to make sure that all updates are completed!

    You can try clicking the start or the Windows key go to programs and features-turn windows features on or off. Check the box of Windows search.

    Please let me know how it goes.

    You can say thanks for trying to help, by clicking on the Thumbs Up below! .

    Thank you.

  • Solution for the Photosmart all-in-one 7520e Center

    I bought a Photosmart 7520e printer and installed the software from the CD that came with it.  Everything worked ok except the solution Center.  He said that the installation was complete.  I went to hp.com and download the full version and went off the center of the soultion.  Also, there is a firmware update available, I downloaded it, but it would not install.  Where can I download the solution center to and how do I get the update of the firmware to install?  I'm running Windows 7 Professional 64 - bit on a Dell Insiron 530.

    I call this series printer HP Photosmart 7520 in my last post, so I apologize for the mixture to the top. In the future the desktop icon and the circled file will open you to the same place, the Printer Wizard.

    Insofar as it opening in Notepad, I have a document from HP: HP Printer Wizard opens with an error in Script or in the notebook that meets that.

    Try to install the update for the firmware directly from the front panel of the printer. Tap the Web Services > settings > Product Updates > search for updates of the product now.

Maybe you are looking for

  • 80 GB, iPod Classic, Windows 10 synchronization problem

    Firstly, apologies if this is an ancient question.  There are so many threads that it is not easy to find the right one. My 80 GB Classic iPod has worked with Windows XP and Windows 7.  When I got a new computer and upgraded to Windows 10 iPod was se

  • Satellite P300-28th does not start - windows does not load

    I bought Toshiba P300 28th last week. I spent Vista business successfully in Windows XP Professional with provided Toshiba DVD. Update Windows with Windows Update. After 3 days, laptop turns off suddenly, and because Windows does not start, it in fac

  • need help please with iphoto

    Using Mac OS X 10.6.8 Watch a slide show I Photo, in the middle of the show, I noticed that I couldn't stop the slide show (mouse is not responding, and I had to shut down the computer.)  When I restarted and tried iPhoto he kept blocking and saying:

  • My mail icon no longer works

    My mail icon does not open to see the mail; I see that I have eleven messages waiting.  The software is up-to-date by using the Version Os X El Capitan 10.11.2

  • HP w17e monitor camera?

    I have a HP w17e monitor attached to a Mac Mini (mid 2007version). Mac Mini is running OS x 10.6.8. Has been a little frustrated Sunday during a talk on web (i-CAT) with one parent. I saw him, but he couldn't see me. This monitor has a camera? If so,