IF ELSE condition in the ODI package using

Hello

I want to use if condition in package ODI.
My exact requirement is that if a column in a table has a certain value, the value "XYZ" only then I must go forward in the case otherwise I do not want to run the workflow of the entire package.
I can get the count in a variable through count (*) where the value = "XYZ". But how to use this value to go further (if it's not 0 then flow should start on the other end).

Thank you
Sudeep

Sudeep salvation,

You have what we call 'Evaluate' type of variable in ODI to implement so, another condition.

You must drag and drop the same variable for your package, make it as variable Evaluate (check in the Properties tab below) and that verification of the status of 'superior' to 0, the OK should do the extra step.

Thank you
Guru

Tags: Business Intelligence

Similar Questions

  • Event deyection in the ODI package

    Hello

    I have a number of routines in a package and I want to restrict the execution of the interface if, in any proceeding,
    one of my oracle table is filled with records.

    My requirement is if my Oracle table is filled with then saves the execution of the
    interface in the package must be stopped.

    I was looking in the paper and I got event detection which I think would help me.
    If someone had used before or you know, please help

    I can do this with an event called odiWaitForData or some other possibilities are also there?
    Give me ideas so can I do this with another process of thought?

    Thank you
    Sourabh

    Hi Sourabh,

    My requirement is if my Oracle table is filled with then saves the execution of the
    interface in the package must be stopped.

    You can / handle using a variable of ODI.

    1. create a variable of the ODI, say "VAR_COUNT" (alphanumeric, no persistent) in writing tab refreshing the script below

    SELECT COUNT (*) FROM

    And select the respective logical schema.

    2. in the package, after the interface drag and drop VAR_COUNT twice, step get as refresh and then Evaluate and in giving > 0.

    3. connect the variable Evaluate false in your next interface.

    All the streams in your package,

    Interface 1 - OK-> VAR_COUNT (Refresh) - OK-> VAR_COUNT (Evaluate with condition > 0) - false-> Interface 2...

    Makes sense?

    Thank you
    Guru

  • How to use the Group condition in the ODI mappings

    Hi Experts,

    I have a requirement in the customization of BI applications. Can you please someone explain how to use the LISTAGG function in odi mapping.

    I applied the LISTAGGR function at the level of mapping odi, but I get error below.

    Mapping of ODI: ColumnName: ENAME Expression: LISTAGG (EMP. ENAME, ",") THE GROUP (RANKING BY EMP. ENAME)

    Error:

    ODI-1240: Flow LIST_AGG_FUN_USAGE fails during an operation of integration. This flow of charge table target EMP_BI.

    ODI-1228: task failed LIST_AGG_FUN_USAGE (integration) on the scott_db of ORACLE target connection.

    Caused by: java.sql.SQLSyntaxErrorException: ORA-00937: not a function of simple-group


    Oracle query:

    If I used this sql query in the database the correct result is.

    SELECT DEPTNO, LISTAGG (ENAME, ',') WITHIN THE EMP EMP (ENAME CONTROL) GROUP. DEPTNO;

    Output:

    10CLARK, KING, MILLER
    20ADAMS, FORD, JONES, SCOTT, SMITH
    30ALLEN, JAMES, MARTIN, BLAKE, TURNER, WARD


    Please give your valid solutions, thanks in advance.

    Kind regards

    REDA

    If you try in #ODI12C then in the set of properties, you can select the column which should be used to group by.

    If it's 11g so its bit complicated. Simply replace the mapping with below codes.

    LISTAGG (EMP. ENAME, ",") WITHIN GROUP (ORDER BY ENAME) / * sum() * /.

    Magic!

    Thank you

    Chantal

  • The parallel procedure in the ODI package

    I would like to implement a package in ODI do all tasks in a process flow that I had in OWB. a screenshot of what I had in OWB is here:

    http://postimg.org/image/dvixew9x3/

    AFAIK, in ODI we should be producing scenarios if we want to perform some procedures in parallel (whereas we had in the OWB, fork component that allows to launch procedures in parallel).

    The problem is that I have too many packages that almost all of them use these procedures with their own settings, so I have to generate around one hundred of each procedure scenarios. Scenarios of that difficult managers.

    What is your suggestion?

    If I understand correctly, the problem is with the option "Remember history" of your variables.

    If the history of keep is located on 'The most recent value' or 'All values', then the value will be shared by all sessions. If a session changes the value of a variable, the new value will be see by other sessions.

    If keep historical is set on 'No. History', the value will be isolated for each session. Change the value in a session will not affect the other. I guess you want to go for that one.

    In your packet for each of your scenario, you can go on the additional Variables tab in the properties and set the value of each variable.

    Kind regards

    JeromeFr

  • In the odi package, if mapping OK then si cartographie ok puis definissez set evaluate variable true

    In package of odi, if mapping OK then together assessed variable true and if the mapping is KO and then together evaluate false variable.

    Why do you need to estimate variable?

    If you need custom with battery archiving:

  • The remote package using DB Link component

    I have a package in a database defined in this way:

    CREATE or REPLACE PACKAGE xx_dummy_package BODY
    IS

    Dummy_procedure RETURN NUMBER of FUNCTION
    IS

    BEGIN

    DBMS_OUTPUT. Put_line ("I am now in dummy_procedure");
    RETURN 1;

    END dummy_procedure;

    END xx_dummy_package;


    And I'm calling that package from an external database by using the following code:


    DECLARE

    NUM NUMBER;

    BEGIN

    -User package db link function
    NUM: = [email protected]_PROCEDURE ();

    END;

    But I get the following error:

    ORA-06550: line 7, column 12:
    PLS-00352: cannot access another database ' APPSRHREM. XX_DUMMY_PACKAGE. DUMMY_PROCEDURE'
    ORA-06550: line 7, column 12:
    PLS-00201: identifier ' APPS@APPSRHREM. XX_DUMMY_PACKAGE. DUMMY_PROCEDURE' must be declared
    ORA-06550: line 7, column 5:
    PL/SQL: Statement ignored

    Someone knows why this phenomenon happens?

    Thanks :)

    You're not wrong is

    [email protected]_PROCEDURE ();

    It's

    Owner.package_name.function_or_procedure@db_links

    as

    Apps.xx_dummy_package.dummy_procedure@DBLINK)

    HTH
    Antonio NAVARRO

  • Get the Error Message of all objects inside the ODI package failed

    Hello

    I created a variable for use in my charge pack with the following commands:

    SELECT 'A ' | CASE
    WHEN SSS. STEP_TYPE = 'F' THEN
    "INTERFACE".
    WHEN SSS. STEP_TYPE = "VD" THEN
    "DECLARACAO AGAIN.
    WHEN SSS. STEP_TYPE = 'VS' THEN
    "INCREASE DA AGAIN."
    WHEN SSS. STEP_TYPE = ' THEN
    "AVALIAÇÃO AGAIN."
    WHEN SSS. STEP_TYPE = 'V' THEN
    "ATUALIZACAO DA AGAIN."
    WHEN SSS. STEP_TYPE = 'T' CAN
    'PROCEDURE '.
    WHEN SSS. STEP_TYPE = "OE" THEN
    "COMANDO DO."
    WHEN SSS. STEP_TYPE = "IS" THEN
    "LOGGING MAKE ODI.
    WHEN SSS. STEP_TYPE = "RM" THEN
    "REVERSA ENGENHARIA DO MODELO.
    WHEN SSS. STEP_TYPE = "CM" THEN
    "CHECK MODELO.
    WHEN SSS. STEP_TYPE = "CS" THEN
    "CHECK SUB MODEL.
    WHEN SSS. STEP_TYPE = "CD" THEN
    "CHECK DATA STORE.
    WHEN SSS. STEP_TYPE = "JM" THEN
    "MODEL A LOG."
    WHEN SSS. STEP_TYPE = 'JD' THEN
    'LOG THE DATA STORE.
    END | ' ' || SSS. STEP_NAME | ', falhou devido a -' | SNET. TXT
    < % = OdiRef.getObjectName ("SNP_SESSION") % > SS,.
    < % = OdiRef.getObjectName ("SNP_SESS_STEP") % > SSS,.
    < % = OdiRef.getObjectName ("SNP_EXP_TXT") % > WOMEN'SNET
    WHERE SSS. SESS_NO = SS. SESS_NO
    AND SNET. I_TXT = SS. I_TXT_SESS_MESS
    AND SNET. TXT_ORD = 0
    AND SS. SESS_NO = < % = odiRef.getPrevStepLog ("SESS_NO") % >
    AND ROWNUM = 1

    Setting the variable to the schema, I am using and is defined as the last value, but when I run it returns me the following error:

    java.lang.Exception: error: no value to assign to this variable for DefDate:2010 - 08-31 02:40:52.0
    DefN:null
    DefV:null
    IndStore:L
    ITxtDefT:1307001
    ITxtVar:1306001
    SessNo:298001
    VarDatatype:T
    VarName: GLOBAL .vg_RETORNA_ERRO

    at com.sunopsis.dwg.dbobj.SnpSessTaskSqlV.execStdOrders (SnpSessTaskSqlV.java)

    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt (SnpSessTaskSql.java)

    at com.sunopsis.dwg.dbobj.SnpSessTaskSqlV.treatTaskTrt (SnpSessTaskSqlV.java)

    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask (SnpSessTaskSql.java)

    at com.sunopsis.dwg.dbobj.SnpSessTaskSqlV.treatTask (SnpSessTaskSqlV.java)

    at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep (SnpSessStep.java)

    at com.sunopsis.dwg.dbobj.SnpSession.treatSession (SnpSession.java)

    at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand (DwgCommandSession.java)

    at com.sunopsis.dwg.cmd.DwgCommandBase.execute (DwgCommandBase.java)

    at com.sunopsis.dwg.cmd.e.i (e.java)

    at com.sunopsis.dwg.cmd.g.y (g.java)

    at com.sunopsis.dwg.cmd.e.run (e.java)

    at java.lang.Thread.run (unknown Source)

    The return of the variable is inserted into a file. Txt

    What can be wrong?

    Thank you!

    Based on our discussion offline. The query that worked.

    >

    SELECT 'la'. CASE
    WHEN SSS. STEP_TYPE = 'F' THEN 'INTERFACE '.
    WHEN SSS. STEP_TYPE = 'VD' THEN 'VARIABLE DECLARATION.
    WHEN SSS. STEP_TYPE = 'VS' THEN 'SET/INCREMENT VARAIBLE.
    WHEN SSS. STEP_TYPE = ' THEN 'EVALUATE THE VARIABLE '.
    WHEN SSS. STEP_TYPE = 'V' THEN 'REFRESH THE VARIABLE.
    WHEN SSS. STEP_TYPE = 'T' THEN 'PROCEDURE '.
    WHEN SSS. STEP_TYPE = 'OE' AND 'OS COMMAND.
    WHEN SSS. STEP_TYPE = "IS" THEN "ODI TOOL."
    WHEN SSS. STEP_TYPE = "RM" AND "MODEL OF REVERSE ENGINEERING".
    WHEN SSS. STEP_TYPE = "CM" THEN "VERIFY THE MODEL.
    WHEN SSS. STEP_TYPE = 'CS' THEN 'CHECK THE SUBMODEL.
    WHEN SSS. STEP_TYPE = 'CD' THEN 'CHECK DATA STORE.
    WHEN SSS. STEP_TYPE = "JM" THEN "JOURNAL MODEL.
    WHEN SSS. STEP_TYPE = 'JD' THEN 'LOG THE DATA STORE.
    END | » '|| SSS. STEP_NAME |
    ', is not right-' |
    SNET. TXT
    Of
    <%=odiRef.getObjectName("SNP_SESSION")%> SS
    LEFT OUTER JOIN <%=odiRef.getObjectName("SNP_SESS_TASK_LOG")%> SSTL ON (SSTL. SESS_NO = SS. SESS_NO)
    LEFT OUTER JOIN <%=odiRef.getObjectName("SNP_SESS_STEP")%> SSS ON (SSS. SESS_NO = SS. SESS_NO)
    LEFT OUTER JOIN <%=odiRef.getObjectName("SNP_EXP_TXT")%> SNET ON (SNET. I_TXT = SSTL. I_TXT_TASK_MESS)
    WHERE SSTL. TASK_STATUS = 'E '.
    AND SS. SESS_NO = "<%=odiRef.getPrevStepLog("SESS_NO")%>". »
    AND ROWNUM = 1

  • How to change repository connection in the Console of the ODI

    Hello

    I use ODI 11.1.1. During the configuration of the Console of the ODI, I used a Master & working (for example, DEV_MR & DEV_WR) repository. I was able able to connect to this repository of Console ODI.

    Now, I created another series of Master & repository of work (e.g. DEV_MR1 & DEV_WR1). How can I create repository connection to connect these repositories?

    My next question is, after you create the repository connection to these repositories if I create a user through ODI Studio. ODI Console does not logon with the user created. How to solve it?

    Please help me.

    Thank you

    MT

    If you just want to point your console ODI new rest and then update the connection details in your pool of connections from Weblogic to point to the new repositories. You will need to restart the Weblogic service after doing this for the new connection to master to be picked up repository.

  • What ODI protocol uses to communicate over the network?

    We need to open ports in the firewall to allow the ODI to connect to another instance, but we want it open only for the protocol used by ODI. It would be something like SQLNet or HTTP.

    In general, communication purposes with an agent of the ODI for invocation (i.e. perform scenarios etc.) is performed via the HTTP protocol on port defined by the user, as far as I know - TCP port 20910 is often used. If the communication with the agent of ODI is protected with SSL / TLS, then the initial communication would take place over HTTP on port defined by the user in front of an encrypted tunnel is set up by using the SSL / TLS protocol.

    Database connectivity is also at the level of the network as you say properly and according to the particular database that you are using a different application level protocol will be used by the JDBC driver. For example, database connections Oracle would use the TNS (the TCP port default 1521) Protocol while MS SQL uses the Protocol (TCP port 1433 by default) TDS, but these ports can be customized. If you use tools such as SCP in ODI while you need to open ports between the agent and the target computers so that for example you can access SSH on the target (TCP 22 for SSH default port) machine and so on.

    What this really means to however, it is exactly that you need to open TCP ports would depend on what tools you use in ODI and what technologies are, you connect from / to. It depends also to some extent how smart is your firewall and if it can detect the level protocols such as HTTP application with inspection packages rather than having to allows you to configure ports specific TCP rather than application-level protocols, for example TCP 20910 port.

    I hope that you started Gets

  • Download DataServer User/Pass/host with ODI Variable to use in the ODI tools

    Hi guys.


    I was thinking about a way to dynamically modify the ODI tool based on the parameters of a root.


    So I created a dummy DataServer with host that the IP address of the server I want to reach and define the user/pass I will use to authenticate.


    Data_Server_DMZ.png

    Then I coded a variable with odiRef.getInfo to obtain this information, but the two results return nothing because this API based on the execution of an interface works. I've not found an API to get these values from a package.

    ODIVariable_HOST.png

    Is there a way to get this base only in a logical schema, such as: odiRef.getDataServerInfo ("LS_OF_THE_DATASERVER", "DSERV_NAME") so that I can use it like this:

    ODI_PKG.png

    Thanks for the help, Giampaoli.

    I've made a few changes based on the post you sent.

    Basically, I used only the tip of the game from the source as the topology I wanted settings and coded the target with this:

    Command on the target

    Command on the Source

  • Loading of the data using the ODI Crores

    Hi Experts,

    I'm loading data 16.5 crores from source to target with in the only Oracle DB (for source and target Ihave two different schemas) and the target tablespace have 180 GB, whereas I am running using the ODI interface, found the extension tablespace TEMPerror. but I did not have enough space to increase the TEMp tablespace in my PB.
    Please help me any other solution to solve the same.

    Thank you in advance,

    Kind regards
    Chaitanya.

    Hi Chaitanya,

    Please add separate column (column sequence number) in the source table and retrieve the data with the sequence number and apply the index on the sequence column.
    Add the filter to the sequence column condition in interface and run the interface in order to transmit the data between the source and target wise bouquet

    for example: Add the command to the filter condition and transmit values like below

    Command: sequnce_column_name between 1 and 100000

    sequnce_column_name later between 100001 and 1000000 next sequnce_column_name between 1000001 and 10000000

    Continue to run based on the calculation of your previous run time

    It will be the word incase there no column of date as lupdated_date, created_date, created_by and updated_by

    Kind regards
    Phanikanth

  • What is the MTBF method, used for the cRIO 9012, is the method of counting of Telcordia under what conditions?

    What is the MTBF method, used for the cRIO 9012, is the method of counting of Telcordia under what conditions? (Temperature, humidity, etc.)

    Hi jojosalud,

    According to the specifications for the cRIO-9012, the MTBF is 330 481 hours at 25 ° C; Question of Bellcore level II.

    Kind regards

  • When you use Excel or my Peachtree Accounting program, entered digital as "$152(32 in the accounting package or the same number with a square symbol as the decimal point in Excel.)". No idea what I should check first?

    When you use Excel or my Peachtree Accounting program, entered digital as "$152(32 in the accounting package or the same number with a square symbol as the decimal point in Excel.)".  No idea what I should check first?

    Thank you for visiting the website of Microsoft Windows Vista Community. The question you have posted is related to Office Excel and would be better suited to the office community. Please visit the link below to find a community that will support what ask you

    http://www.Microsoft.com/Office/Community/en-us/default.mspx?d=1

    Mike - Engineer Support Microsoft Answers
    Visit our Microsoft answers feedback Forum and let us know what you think.

  • I used a cleaning program that has removed the solitaire games that come with the software package of vista. Is it possible to recover?

    original title: OOPS! Remove Solitaire games by mistake

    My husband used a cleaning program that has removed the solitaire games that come with the software package of vista. Is it possible to recover?

    Hi L-959,

    Try to reinstall the game Solitaire to turn on or off Windows features.

    Turn on or off Windows features

  • "The feature you are trying to use is on a network containing the installation package"status.msi"in the box below.

    Original title: the status message appears on the start page.

    Message that appears at startup to the top: the component you are trying to use is on a network containing the installation package "status.msi" in the box below.  Click OK to try again or enter a different path to the folder containing the installation package "status.msi" in the box below.

    Hello

    Have a few questions that might help me to analyze the cause of the issue you're having with your computer.

    ·         When you get the message that says, "Status.msi file missing?

    ·         You have an installed HP printer?

    ·         You made any hardware or software changes the computer recently?

    Method 1:

    You can try to clean boot and check if you still get the error message.

    How to troubleshoot a problem by performing a clean boot in Windows Vista or in Windows 7

    http://support.Microsoft.com/kb/929135

    Note: After troubleshooting, be sure to set the computer to start as usual as mentioned in step 7 in the article.

    Method 2:

    If the problem persists, you can try to restore the system on your computer and check if it helps.

    http://Windows.Microsoft.com/en-us/Windows-Vista/what-is-system-restore

    Hope this helps

Maybe you are looking for

  • BodyMedia SYNC errors.

    I am trying to load the BodyMedia SYNC application to allow syncing of my cuff.  When the application tries to launch, it gives the error: BodyMedia SYNC has encountered a problem and needs to close Seems to be connected with the USB driver. Help?

  • My default disctionary in Outlook Express is French with no English Dictionary available.

    I noticed that correctly spelled words have been highlighted when I sent the email on Outlook express.  I checked the dictionary and it was French.  A dictionary of English was not available.  How can I change the English Dictionary?

  • Contents of the external drive not displayed in Explorer

    Hello I have a Seagate 2 TB external backup drive. When I backup files and click on the drive, he said only: "this folder is empty". However, if I search for a file or directory appears. I read something to the effect that Windows 7 does not show fil

  • Adjust AutoCorrect to my needs

    Hello dear forum!I would like to know if it is possible to set the tool of AutoCorrect for lighting in this way, she'll fix my photos a stop brighter.For the moment I must correct each photo to be in my style, but I want to speed it up.I can't really

  • Captivate 9 and storyboard

    HelloI would like to know if some users of Captivate, create their storyboards of e-learning courses with this software?In which is the case, the good practices that , or Captivate function do use?Thank youChris.