Start scenario when source data change

Hi,
is it possible to start a scenario when a data on one table changes on the source DB ?
For example, an application change a timestamp on a table in the source db, this change triggers the start of the ODI scenario.
Many thanks,
Olivier

Olivier,
Can you create a database trigger on that table and populate a row in another table indicating that the timestamp on the table has changed.
Then, you can use OdiWaitForData tool from toolbox in the package as a Starting step and connect its OK with odiStartScen tool which further invokes the scenario that you want to execute.

Similar Messages

  • How source data changing synchronize to destination after exp from source?

    Stream creation, how the source data changing synchronize to the destination after exp data from source?
    Time of Stream creation:
    a. exp/imp
    exp erpdev/erpdev owner=erpdevobject_consistent=y file=erpdev.dmp grants=y rows=y indexes=y statistics=none
    imp erpdev/erpdev file=erpdev.dmp ignore=ycommit=y log=import.log streams_instantiation=y
    b. confirming source and dest database SCN
    BEGIN
    DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN(
    SOURCE_SCHEMA_NAME=> 'erpdev',
    source_database_name=> 'ERPDB',
    instantiation_scn=> &iscn ,
    recursive =>TRUE);
    END;
    c. 'START_APPLY' of dest database
    EXEC DBMS_APPLY_ADM.START_APPLY('STRMADMIN_APPLY');
    Question:
    1.
    Stream start to work at "c. START_APPLY of dest database", how the source data changing synchronize to the destination after exp data from source?
    2.
    What was "b. confirming source and dest database SCN" for?

    You missed a step : the prepare table and its role. The prepare table for capture returns an SCN which will tells Streams at which SCN it must start capture any DML. At this stage the Apply may be configured or not, but if the source tables is modified, an LCR will be created when you start the capture and this LCR will be sent to the apply site when the apply site is finally up.
    During the process of transfering the content of the Source site to target site there is always room for a desync to take place if the source site is active. Two cases exists and must be examined:
    - Prepare table first, then export source --> any DML after the prepared SCN and before the start of the export will be sent as LCR while it is also into the export->> duplicate DML
    - Export first then prepare table --> A DML occured AFTER the start of the export but before the SCN returned by the prepared SCN: this DML will be missing in the epxort (and at target site) and not yet captured neither since it occured before the prepare table.
    So what is the best? The answer the first. You resolve the issue with the apply SCN which has into the export, for each table the SCN at the start of the export. In this scenario, you have prepared first, export next source, import in target and set the scn of each table i(at apply site) using the one found nto the export (hence the parameter STREAMS_INSTANTIATION ).
    Now even all SCN captured on source after the prepared table but before the start of the export, will effectively be sent to apply site but will be IGNORED by the apply process has it would be a SCN aging before the start of the export. The SCN of the tables into the export file will become the SCN of the apply process. any SCN lower will be ignored by the apply process.
    A last word in respect of a DML that started AFTER the start of the export and BEFORE the end of the export on source site (during the export). Since it is after the prepare table, it is captured and since it is after the start of the export, it is not into the export (we assume the export is consistent - which is not always true). So you need this LCR as the mutation it describes occured after the start of the export and is not in the export: everything is ok.
    Having said that, still the best way to setup a target site is still to avoid any transction on source site during the setup.
    I hope you understand this well for it is the way it works.

  • Using sqlldr when source data column is 4000 chars

    I'm trying to load some data using sqlldr.
    The table looks like this:
    col1 number(10) primary key
    col2 varchar2(100)
    col3 varchar2(4000)
    col4 varchar2(10)
    col5 varchar2(1)
    ... and some more columns ...
    For current purposes, I only need to load columns col1 through col3. The other columns will be NULL.
    The source text data looks like this (tab-delimited) ...
    col1-text<<<TAB>>>col2-text<<<TAB>>>col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    END-OF-RECORD
    There's nothing special about the source data for col1 and col2.
    But the data for col3 is (usually) much longer than 4000 chars, so I just need to truncate it to fit varchar2(4000), right?
    The control file looks like this ...
    LOAD DATA
    INFILE 'load.dat' "str 'END-OF-RECORD'"
    TRUNCATE
    INTO TABLE my_table
    FIELDS TERMINATED BY "\t"
    OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS
    col1 "trim(:col1)",
    col2 "trim(:col2)",
    col3 char(10000) "substr(:col3,1,4000)"
    I made the column 3 specification char(10000) to allow sqlldr to read text longer than 4000 chars.
    And the subsequent directive is meant to truncate it to 4000 chars (to fit in the table column).
    But I get this error ...
    Record 1: Rejected - Error on table COL3.
    ORA-01461: can bind a LONG value only for insert into a LONG column
    The only solution I found was ugly.
    I changed the control file to this ...
    col3 char(4000) "substr(:col3,1,4000)"
    And then I hand-edited (truncated) the source data for column 3 to be shorter than 4000 chars.
    Painful and tedious!
    Is there a way around this difficulty?
    Note: I cannot use a CLOB for col3. There's no option to change the app, so col3 must remain varchar2(4000).

    You can load the data into a staging table with a clob column, then insert into your target table using substr, as demonstated below. I have truncated the data display to save space.
    -- load.dat:
    1     col2-text     col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    XYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    END-OF-RECORD-- test.ctl:
    LOAD DATA
    INFILE 'load.dat' "str 'END-OF-RECORD'"
    TRUNCATE
    INTO TABLE staging
    FIELDS TERMINATED BY X'09'
    OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS
    col1 "trim(:col1)",
    col2 "trim(:col2)",
    col3 char(10000)
    SCOTT@orcl_11gR2> create table staging
      2    (col1 varchar2(10),
      3       col2 varchar2(100),
      4       col3 clob)
      5  /
    Table created.
    SCOTT@orcl_11gR2> host sqlldr scott/tiger control=test.ctl log=test.log
    SCOTT@orcl_11gR2> select * from staging
      2  /
    COL1
    COL2
    COL3
    1
    col2-text
    col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    XYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    1 row selected.
    SCOTT@orcl_11gR2> create table my_table
      2    (col1 varchar2(10) primary key,
      3       col2 varchar2(100),
      4       col3 varchar2(4000),
      5       col4 varchar2(10),
      6       col5 varchar2(1))
      7  /
    Table created.
    SCOTT@orcl_11gR2> insert into my_table (col1, col2, col3)
      2  select col1, col2, substr (col3, 1, 4000) from staging
      3  /
    1 row created.
    SCOTT@orcl_11gR2> select * from my_table
      2  /
    COL1
    COL2
    COL3
    COL4       C
    1
    col2-text
    col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    more-col3-text
    XYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
    1 row selected.

  • CSS sticky session when source ip changes

    I work for an ASP and am having problems with customers dropping their ssl connection to our app across the internet on wireless connections. The customer was using a verizon wireless card and the ip assigned to his computer was a 70.x.x.x (ipconfig) but I had the user go to http://myipaddress.com because I could not see the ip on the sniff trace. The ip changed in the verizon network to a 66.x.x.x. I was able to trace the 66 ip and found that when the user was dropped his 66 ip changed. Has anyone experienced this?? I am looking for a long term fix. Currently SSL is termingation at the server farm and I am using a sticky source ip at 4 hours. I would be willing to move the ssl to the content switch if needed but what can i do to keep the same session after a source ip change?
    Thanks,
    Steve
    CSSIP
    CSSP

    by terminating ssl on the css, you could use cookie stickyness which is independent of the ip address.
    This would solve your problem for sure.
    Without the SSL module, you don't have much option.
    If you can't use IP address, you also can't use TCP ports, so the only thing left is the SSL ID.
    You could 'advanced-balance ssl' with 'application ssl'.
    However, IE browsers are known to change frequently the SSLID even during a single session.
    So, by using this optin, you may fix the problem of this particular client but create more issues with other customer.
    Unfortunately that's the only choices available.
    Gilles.

  • Function Module to change start of infotypes when hire date changed in HCM

    Hello Guys,
    I have a scenarion where in i need to change the start of the infotypes(Ex IT0001,2,7,41.105 etc) for an employee in the program with new hire date. For this already one BDC is there with PA41 recording but for some scenarios it is not working. I am searching for a FM to overcome the issue. Coudl any one pls help me if you have the same problem eralier.
    Early help appreciated......
    Thanks,
    Preetham

    This way we need to change all the infotypes with this FM in the program which are there in PA41 to change the date,  I am looking a direct FM whicn can do the functionality of PA41 in instead of BDC.
    Thanks ...

  • Free goods condition is not deleted when pricing date changes

    Hi experts,
    we want to use the free goods condition type 'NA00' / 'NRAB' with category '3' (inclusive rebate).  The condition records are valid a certain period ( 1 month e.g.).
    The system inserts the condtion 'NRAB' in the calculation scheme and calculates the rebate. So far, so good.
    The problem begins, when you change the pricing date into a date when no condition record is valid.
    The system should remove the rebate.
    But it does not.
    The rebate is still there. Wen you change the standard customizing of condition type ''NRAB' you can delete the condition line.
    any ideas?
    SAP-Mistake?

    Hi Bernhard,
    You are changing teh pricing date but as per y understanding th condition record consider the "Serv.rendered date".
    Better go to Condition tab page --> Click at "Analysis" tab --> on next screen you can find there are so many condition type on your left side --> select your rebate condition type --> once you open the tree of condition type --> sysytem will show the detail on right hand side
    See the details that system consider which date "Pricing date" or  "Serv.rendered date".
    Hope this helps.
    Regards,
    MT

  • Components tied to scorecard "reset" when scorecard data changes

    My dashboard is set up so a bunch of gages and charts are tied to a scorecard.  The scorecard in turn has data that changes according to the selection in a label menu (two options: "Current" and "YTD").  I'm trying to get it so that the selection on the scorecard doesn't reset when the label menu selection changes.
    For instance: you make a selection on the scorecard, and the charts adjust accordingly.  Then you click on "YTD" and the charts reset to the data on the top selection of the scorecard, <i>even though your prior selection is still highlighted</i>; so if you're not paying close attention it looks like the charts are then displaying the wrong data.  You have to click on the highlighted row again to get the charts to adjust correctly.
    I'd like it so that either:
    - The selection stays when you go from "Current" to "YTD" or vice-versa
    or
    - The highlight returns to the top row to correspond to what the charts display.
    I thought the "Clear Destination When No Selected Item" and "Insert on: Interaction Only" options for the selectors would make a difference but they have no effect as far as I can tell.

    Just a few minutes after I posted this thread I figured out what was going on: I had a second scorecard and label menu on another tab that was pulling data from the same spot, and I had to adjust <i>their</i> properties as well.
    Nothing to see here, folks!

  • What event tells me when any data changes in a mx:datagrid?

    I have a mx:datagrid that I need to have an event tell me when anything at all changes in the datagrid. The datagrid can be empty and as such may not have a dataprovider (=null) some of the time. I have looked at a variety of events but none seem to do what i want - can anyone suggest what event i should be listening for please?
    many thanks,
    Mark.

    We have not formalized the concept of nested collections in Flex.  However,
    let me amend my recommendation a bit.
    Typically in a nested collection, the objects in the top-level collection
    are not just collections but an object with some other reference data and
    then a collection like:
        public class FamilyTreeItem
            public var name:String;
            public var children:ArrayCollection;
    The top-level collection is listening for propertyChange events.  Typically,
    as a data item gets modified, a propertyChange event is dispatched.  If the
    data items do not dispatch propertyChange events, then the itemUpdated()
    method is used.  Either way, the result is a COLLECTION_CHANGE event from
    the top-level collection.
    When you have a nested ArrayCollection, while that sub-ArrayCollection is
    dispatching COLLECTION_CHANGE, nobody is listening for it at the top-level.
    You can dispatch it yourself, or you can call itemUpdated() on the top-level
    or dispatch a propertyChange.
    The latter will be the most work, but most general.  Code in FamilyTreeItem
    would attach a listener to the collection for COLLECTION_CHANGE and then
    dispatch a propertyChange as appropriate.

  • Lync login issue with one domain but started working when domain is changed.

    we have two domains in lync 2013 infra.i have enabled user id with one domain but its not allowing user to login.If we change user id to other domain it start working. it seems user id already existed somewhere in lync or active directory database. can
    anyone tell how to remove complete user database so that the id can be assigned to other new users.

    Hi,
    Did the user account also be deleted or disabled in AD? Disable account is different form remove account. If you disable an account the account is still stored in AD, whenever you need to enable it you can find it. So if you only disable the account who
    leave the company, please remove the account and try again.
    Best Regards,
    Eason Huang
    Eason Huang
    TechNet Community Support

  • What steps required in OWB when source gets changed?

    Hi,
    I have a project with source module and target module with different mappings. Everything is working fine. Now I need to change my source database connection and execute the same mappings. What steps are required to implement this changes. Im very new OWB. Kindly give your suggestions.
    Regards
    Kishan

    Patrick,
    To the solution you suggested, I understand after re-registering the source location, we would need to redploy the connector from the target to that source and also all the mappings which are using that source object.
    I was wondering what would be the implications if one drops and recreates the DBLINK in the target schema to point the new source. The only which I am aware of would be to re-compile all the packages which are using that dblinks.

  • Dynamically set iChart pen colors at page runtime when query data changes

    I have a page with an iChart (3D Bar Chart) where I am currently allowing the pen colors to set automaticlly inthe diplay template.  However, the SQL Query that supplies the data, will return a different number of rows depending on user selections.  The data is aggregated by type and could possibly return up to 7 rows, a row for each type.  As an example.....
    Query run #1 retuns rows for:
    Type 1
    Type 3
    Type 4
    Type 5
    Query Run #2 returns rows for:
    Type 1
    Type 2
    Type 3
    I would like to set the iChart pen colors so they would aloways be the same for each Type returned by the SQL Query....
    Type 1 - blue
    Type 2 - green
    Type 3 - red
    Type 4 - orange
    Type 5 - pink
    Type 6 - purple
    Type 7 - black
    I would like these colors to be used whether or not query returns data for a specific type or not.  Any help would be greatly appreciated

    OK.  Assuming you are returning the color value or the type value in the Query we can do this.
    First, in your Chart Template, link the value that will determine the color (either the "Color" column or the "Type" column from the query) to the Datalink Columns field on the Data Mapping tab of the Chart Template.
    Then using an applet event (update event) fire a javascript function.  This function will update the pen colors of your chart dynamically.
    Use document.myApplet.getChartObject().getDatalinkValue(PENNUMBER,POINTNUMBER,ATTRIBUTE) where PENNUMBER is the Pen or Row in your query, POINTNUMBER can probably be left at '1', and ATTRIBUTE is the numerical index of the datalink value (probably also 1).
    This will give you either your Color value or your Type value.
    From there set the PenColor of the Chart using document.myApplet.getChartObject().setPenColor(INDEX, NEWVALUE) where INDEX is the actually Pen Number (query row) and NEWVALUE is the new color.  Keep in mind the NEWVALUE is expecting a color object not an English color. 
    You can create a color from an English string by using document.myApplet.createColor("blue").
    Then, don't forget to update the Chart -
    document.myApplet.updateChart(false).  Don't do "true" or else you'll end up in an infinite loop.
    Try that out.

  • How to execute a update query when the particular date changes

    hi all,
    i am using date base 11.1.0.6.0,
    i am trying a small update query it should fire when particular date changes in year.
    i think for trigger but i didn't get how to execute it.
    Regards,
    Pavan

    Hi, Pavan,
    Use dbms_scheduler to run a procedure at a given time (or at repeatedly, at given times).
    A trigger is good for re-acting to certain actions in the database, someone INSERTing a row in a given table, for example. Nothing will necessarily be happening when you want your procedure to run, so a trigger is not good in this case.

  • Sql query to bind data from grid and print total count and amount total when date changes

    SELECT SLHD.VOUCH_CODE,SLHD.VOUCH_DATE,SLHD.VOUCH_NUM,SUM(SLTXN.CALC_NET_AMT) AS AMT,ACT.ACT_NAME,SUM(SLTXN.TOT_QTY) AS QTY
    FROM SL_HEAD20132014 AS SLHD,ACCOUNTS AS ACT,SL_TXN20132014 AS SLTXN
    WHERE SLHD.ACT_CODE=ACT.ACT_CODE AND SLTXN.VOUCH_CODE=SLHD.VOUCH_CODE
    GROUP BY SLHD.VOUCH_CODE,SLHD.VOUCH_DATE,SLHD.VOUCH_NUM,ACT.ACT_NAME
    ORDER BY SLHD.VOUCH_DATE 
    i want to print total quatity and total sale in grid when data changes
    like
    date amount quantity
    01/02/2013 1200 1
    01/02/2013  200 1
    01/02/2013  1400 2 // date changes here 
    02/03/2013 100 1 
    02/03/2013 50 4
    02/03/2013 150 5 // date changes and so on

    this query only print all the data from table i want total quantity and total amount of daily sale in same grid when ever date changes
    You may add the date filter to Visakh's query:
    SELECT SLHD.VOUCH_DATE,SUM(SLTXN.CALC_NET_AMT) AS AMT,SUM(SLTXN.TOT_QTY) AS QTY
    FROM SL_HEAD20132014 AS SLHD,ACCOUNTS AS ACT,SL_TXN20132014 AS SLTXN
    WHERE SLHD.ACT_CODE=ACT.ACT_CODE AND SLTXN.VOUCH_CODE=SLHD.VOUCH_CODEand SLHD.VOUCH_DATE = @yourdate --passed from the front end application
    GROUP BY SLHD.VOUCH_DATE
    WITH CUBE
    ORDER BY SLHD.VOUCH_DATE
    Having said, each time when you select the date, you query the table would be expensive method. May be you can filter the date within your dataset already populated if you have entire data in the dataset.

  • [APEX 3] Requested source data of the report has been modified

    Hello APEX-Friends,
    I have a common problem but the situation is a bit different here. Many of you might know the "invalid set of rows requested the source data of the report has been modified" problem. Often it occurs on submit. That means, you have a report, you select rows, you do things, you submit the page and everything blews up.
    This is because you enter some values into fields the report depends on and so you modify your report parameters and the source data changes.
    But:
    In my case I have a dynamically created report that blews up before any submits occur or values change.
    My query is a union of two selects. Both query different views. Those views use a date field as parameter and some compare functions.
    I read the field with a V-Function i wrapped arround the apex V Function - declared as deterministic. My date compare function is also declared deterministic (I doubt this makes any differences as it might be only important for the optimizer, but as long as I don't know exactly what APEX evaluates, I go for sure).
    I ensured, that the date field is set by default with the current date (and that works, because my interactive report initially displays correct data from the current date).
    So everything is deterministic and the query must return same results on subsequent calls, but APEX still throws this "source data has changed" error and I am to 99.99% sure, that this cannot be true.
    And now the awesome thing about this:
    If I change the value of the date field, an javascript performs a submit. The page is reloaded (without resetting pagination!) and everything works fine. I can leave the page, reenter, do things - everything works well.
    But if I log into the application and directly move to the corrupted report and try to use the pagination without editing fields or submitting the page the error occurs.
    Do you have any Idea what's happing there? I could try to workaround this by submitting the page the first time it's entered to trigger this "mystery submit" that gets everything working. But I would like to understand this issue and have a clean solution.
    Thanks in advance,
    Mike aka UniversE

    Okay, I found a solution, but I do not understand it - it might be a design flaw in APEX.
    I mentioned the date field that is used in the query. I also mentioned that it is set with the current date by default. I did not mention how.
    There are some possibilities in APEX to do so.
    1. Default-Setting in the element properties
    2. Static assignment if no value is in session cache
    3. Computation before header
    I did the first and second.
    BUT:
    An interactive report seems to work as follows. A query is executed to get all rows of the report. Then a second query is executed to get the rows that shall be displayed. And the order is screwed up, I think.
    1. The first report query to get all rows
    2. The elements are loaded and set to default values
    3. The second report query to get the display rows
    And that's the reason why nothing worked. Scince I added a computation before header the date field is set before the report queries are executed and everything works all fine now.
    But I think it's a design flaw. Either both queries shall be executed before Regions or afterwards but not split as field values might change when elements are loaded.
    Greetings,
    UniversE

  • Report on Opportunity Close Date Changes

    I would like to create a report showing all deals that have had changes made to the Close Date. I am trying to create it from the Pipeline History section of the Analytics, but I am not sure which fields I can use, if any.
    Any suggestions?

    That is a very creative solution, Dale. I do have a couple of "what ifs" for you.
    What if the Close Date is 10/30/2007... I change this to 10/15/2007 - a change of -15 days. Then I realize that I meant to change it to 11/15/2007 and changed it again. Would this create a problem for the report since the change amount would now show a 30-day change when it is really a 15-day change?
    Another scenario has the date change twice in one week, between times that the report is run. The original date of 10/30/07 changes to 11/15/07 and then the next day changes to 12/15/07. How does this affect the report?
    When we get to the point that the audit trail becomes reportable, this problem is solved. Until then, it is quite the puzzle. I think your solution potentially solves part of the problem, but depending on how much that date field actually changes and how often you run your report and which fields are needed in that report, it could return misleading data as well.
    This is a very interesting problem. Dale has come closest to a solution so far. Any other suggestions for DavidG? I am drawing a blank on it so far.

Maybe you are looking for

  • Youtube not working in Safari

    Hello, this is my first post. Recently I have been experiencing a problem with running youtube videos in the Safari browser. It started to happen spontaneously about 1-2 weeks ago, and so far has not changed. If I click a video to play (embedded like

  • How can i run a reports from forms

    Oracle forms 9i Hai All I am using oracle forms 9i. From the forms i need to generate a reports how can i generate a reports from there Regards Srikkanth.M

  • Multiple PO output layout

    Hello, I have a working SAP MM system. Purchase orders are printed using sapscript. I have a new requirement for an additional PO layout. So, the PO processing will be done in the same plant, company code, etc, but the layout should be different for

  • Android 2.1 adobe flash player

    hi, i have upgraded my samsung glaxy portal from android 1.5 to version 2.1.i want to downlaod adobe flash player but it sems flash player 10.1 will only work with android 2.2.is this correct?can i get a work around or is there another version i can

  • Mac Pro new update won't boot after 10.8.2 Update 1.0

    It just stays on the apple screen during boot after entering pw for account. Its been over 5 min that it just stays in that screen. Anyone else seeing this after doing 10.8.2 Supplemental Update 1.0?