SCD type 2 and 3 for Relational Dimension?

SCD type 2 and 3 for Relational Dimension?
==========================
Thanks for your replies.
I searched this forum and web on SCD 2 and 3 implementation using Relational Dimension (Table) using OWB.
I find some thread talks about implementing Oracle Dimensional structures, which has levels/hierarchy etc.
If we design our dimension in pure relational fashion, how do we go about using OWB for SCD 2 and 3?
Are there any new SQL features of 11g to help us here?
Thanks in helping.
RI

Hi,
several years ago Oracle published whitepaper which described steps for designing OWB mappings for loading SCD (types 1,2,3) tables.
But recently (after website reorganization) this whitepaper was removed, although you can stil find it by googling with "scdwhitepaper",
or you can directly download it from http://sourceforge.net/projects/owbland/files/Stuffs_from_Oracle_site/SCDWhitePaper.zip/download
Also it is available for download OWB experts which implement generation of SCD2 mappings according this whitepaper:
http://odi-ee.blogspot.com/2009/02/scd-type2-expert-table-operator.html
http://owbexpert.blogspot.com/2008/12/hallo-hallo.html
Also look at this thread {message:id=4336731} with discussion of bug which force to update all rows in target table, even they not changed between mapping executions.
Regards,
Oleg

Similar Messages

  • Regarding the Message Type and IDOCS related to IS-Banking

    Hi Gurus,
    can any one provide me the Message Type and IDOCs related to IS-Banking.
    Regards.
    Kiran kumar.

    Hi,
    Refer this link,
    http://www.stylusstudio.com/edifact/d04b/BANSTA.htm
    Hope it helps you.

  • How to let java auto discern file type and use related software to open

    thanks

    sorry;
    I am making a program about searching file;
    when this program achieve searching;the result(all files that Fulfiling requirements ) will be shown in JTable;when user click a cell that include fileName;program will produce a object like
    File f=new File(filepath);
    I dont kown what this files type will be,so I hope java can auto discern file and use related software to open(like windows open file with related software)

  • Mapping Type missing for Import Dimension via Interface Tables

    Greetings Everyone,
    I was wondering if anyone else had this issue. I have two Generic dimensions that I have created within the Shared Library. The issue that I'm having is that whenever I create a new profile for these two dimensions, there is never an option to Merge or Replace the dimension. I always have to "create new dimension" even though these dimensions exist within my shared library. This causes a problem because, I have to always perform a replace and it looks like be default, when creating a new dimension, it merges whatever values I have within the interface tables into the existing dimension.
    Thanks,
    Tammy Bian

    Hi Vinodh,
    Pls check if you have mapped the Alias table from Interface Area to Alias dimension in your import profile definition.  And then also check if association between Alias & entity is defined.
    Thanks,
    Darshana

  • Load scd 1 and scd 2 in the same dimension

    Hi
    is there any order for load of customer dimension, when you have in the same dimension fields scd1 and scd2. which one it is better load first, scd type 2 and then, scd type 1 for each customer with state = 1?
    thanks

    hi Mark,
    but I have one field that I want maintain the historic and then, more some fields that I want to update, always that it's possible. both case, in the same (customer) dimension.
    (the state it is for scd type 2, if state=0 inactive , if state=1 active)
    thanks,
    David
    Actually that will part of same task itself in SSIS
    If you're using standard SCD task in SSIS, it will take care of all these aspects by itself. You just need to identify the attributes as Type and Type2
    If you're planning to use another method like say lookup, you need to add the logic in data flow to handle the type2 cases also in the required branch
    See this as an example where I've used lookup based on hash values for applying SCD type 1 and type 2 logic
    http://visakhm.blogspot.in/2014/06/ssis-tips-implementing-scd.html
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • ODI - SCD Type 2 - Insert new row error

    Hi All,
    For Dimension I have a surrogate key, a natural key, and a column with "overwrite on change", start_date, end_date, current_record_ind. When I run the interface with the default SCD Type 2 for SQl server, this runs fine. But when I change that one column from "overwrite on change" to "insert new row", it fails on the update step. What should I be looking for anf fixing.
    Thanks for your time and help.

    DB: SQL Server 2008.
    IKM = IKM MSSQL Slowly Changing Dimension
    Error Message: ODI-1228 - Incorrect syntax near the keyword from.
    Code: update T
    set
    from database.dbo.Dim_type as T,
    database.dbo.I$_Dim_type as S
    where T.Cd = S.Cd
    and T.Current_rec_ind = 1
    and IND_UPDATE = 'U'
    To overcome the issue, I have commented the update code in the Knowledge module and the insert works, but for this one it is ok, but I have requirements where one column needs to be overwritten and other column changes will require to add a new record. How to handle both?
    Thanks for your time.

  • SCD Type 2 Framework

    Hi:
    We are in the process of creating a data mart. We decided to use SCD Type 2 for dimensions.
    I read the SCD 2 transformation logic framework from Oracle Warehouse Builder. Is there any new framework available for this?
    I also read Chris Busch's framework on OTN for SCD 2.
    http://otn.oracle.com/oramag/webcolumns/2003/techarticles/buschonowb.html
    But the links seems to be not working.
    Igor, please advice.
    Any help would be appreciated
    Thanks.

    Magesh,
    A more complete resource on SCD is the June 2003 white papper "Slowly Changing Dimensions with Oracle9i Warehouse Builder". It's a first entry on the Collateral page http://otn.oracle.com/products/warehouse/htdocs/OTN_collateral.html (zipped for download).
    As far as Chris' article, do you mean that Listing 1 and Listing 2 links from within the article are not working?
    Nikolai Rochnik

  • Report to display a wage type and amount

    hi friends,
           From selection screen i have to pick a wage type and for that wage type i have to display a related
    amount . how can i write a report for this?
    its urgent, thanks........
    Moderator message: please search for information and try yourself before asking, do not use terms like "urgent" when posting.
    Edited by: Thomas Zloch on Nov 9, 2011 10:24 AM

    Aarti
    Thanks for your answers,this was the report I was  looking for .
    Full points awarded to you .we can also use this transaction code directly
    PC00_M99_DKON
    regards
    krishna

  • SCD TYPE 2 in ODI 11g-error in INSERT CHANGING AND NEW DIMENSIONS

    Hi Guys,
    Im using IKM:Oracle Slowly Changing Dimension to achieve SCD TYPE 2.
    It is working fine for Overwrite on change.
    But whenever there a new insert upon change(Add Row on Change) in source, throwing below error:
    ODI-1228: Task INT_EMP_SCD_TYPE (Integration) fails on the target ORACLE connection ORA_DEV_EDW.
    Caused By: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (DEV_EDW.EMP_KEY) violated.
    I have unique key in target table column SAPID.
    How to overcome this issue.
    quick help would be highly appreciated.
    Thanks,
    Sreedhar S,
    <telephone number removed by moderator. this is a publicly viewable forum, not Oracle technical support>

    Hi Sreedhar,
    As said in the error message, you have an unique or primary key on one column and you try to insert a value already existing. This is a design issue.
    You have to ensure that you don't try to re-insert existing value for the column(s) with the key.
    Regards,
    Jerome

  • Partitioning SCD Type 2 dimensions and possible update sto partition key

    Hi,
    We have a fact table which only gets inserts and are considering range partitioning this on sell_by_date (as can archive off products which long past sell by date) and hash sub-partition on product_id.
    Heard about partition wise joins and are considering partitioning the SCD Type 2 product dimension in similar way, range partition on product_sell_by_date and sub-partition by hash on product_id in oredr to gte benefiit of partition-wise joins.
    However, is possibility that product_sell_by_date could be updated via delta loads which maintian the SCD type 2 - in theory this attribute shouldn't be updated much.
    Any thoughts, generally on partitioning dimension tables and partition keys which can be updated.
    Many Thanks

    1. Create a function as mentioned by you "max value +1 on grouping of data "on target schema.
    2. Map to the target column
    3. select TARGET as exection area in interface ( don't select source or staging) for this column in interface mapping...
    4. select option only INSERT ( remove de-select UPDATE option) for this column in interface mapping.
    5. Execute the interface.
    Please let me know if this works
    Edited by: neeraj_singh on 6 Aug, 2012 10:38 PM
    Edited by: neeraj_singh on 7 Aug, 2012 1:55 AM

  • Settings for the relation of requirement type and planned order type

    Dear Gurus
    Where we maintain the settings for the relation of requirement type and planned order type?Actually I have maintained strategy 60 for a particular material (planning material) so the requirement type is vsev and along with that the planned order type is coming is vp i.e non convertible planned order.That is ok the system is behaving right.But nowhere I can find the setting of vp with vsev how the system is picking vp?
    Regards
    Sandip Sarkar

    Hi!,
    That is an inbuilt sytem setting and you can't change that.
    Regards,
    Uday

  • Count distinct derived measure on SCD type 2 dimension

    Hi,
    I have 2 dimension tables with SCD type 2 and one fact table :
    DIM1 :
    DIM1_SURR_KEY
    DIM1_NAT_KEY
    DIM1_PROPERTY1
    DIM1_PROPERTY2
    EFFECTIVE_DATE
    EXPIRATION_DATE
    DIM2 :
    DIM2_SURR_KEY
    DIM2_NAT_KEY
    DIM2_PROPERTY1
    DIM2_PROPERTY2
    EFFECTIVE_DATE
    EXPIRATION_DATE
    FACT :
    DIM1_SURR_KEY
    DIM2_SURR_KEY
    MEA1
    MEA2
    Dimension and fact tables are joined with : DIM1_SURR_KEY and DIM2_SURR_KEY.
    In my business layer fact table, I would like to define this derived measure : count distinct of DIM1_NAT_KEY.
    I tried to add new source for the fact table. I also tried an alias of DIM1 in physical layer.
    Nothing works as I want : In Answers, if I select the fact and the count distinct, it works. Even if I select property of DIM1. But if I select property of DIM2, my count distinct return 0 (in SQL sent to Oracle DB, the formula is replaced with NULL).
    Is it possible (and how) to count the number of Nat_Key with a derived measure defined in business layer ?
    If not, I’ll define materialized view on fact table with natural key and dimension ID.
    My first goal is to avoid end user to redefine derived column in Answers for each reports.
    Thanks for your help

    Hi,
    my advise is to map the DIM1_NAT_KEY iside the Fact Table of the Business Model, so you have a new Logical Table Source inside the Logical Fact Table that maps the DIM1_NAT_KEY as a measure. Define the Level for this Logical Table Source and set the COUNT DISTINC aggregation. In this way OBIEE knows that that measure is inside a fact an it treat like that.
    I hope it helps.
    Regards,
    Gianluca

  • Anybody got SCD Type 2's to perform quickly using dimension operator

    Hi there,
    Hitting major performance problems running mappings to populate SCD Type 2's when they have large amounts of pre-existing data.
    Anybody got this performing acceptably? Tried indexing but to no avail.
    Many Thanks

    Hi there,
    Thanks for getting back to me - found the patch and this patch hasd already been applied.
    An example of the sql being generated in a really simple mapping with the dimension operator for small tables is as follows
    MERGE
    /*+ APPEND PARALLEL("NS_0") */
    INTO
    "RETAILER_PUBLISHER_NS"
    USING
    (SELECT
    "MERGE_DELTA_ROW_0"."NS_OUTLET_SRC_ID$1" "NS_OUTLET_SRC_ID",
    "MERGE_DELTA_ROW_0"."NS_PUBLISHER_CODE$1" "NS_PUBLISHER_CODE",
    "MERGE_DELTA_ROW_0"."NS_TITLE_CLASSIFICATION_CODE$1" "NS_TITLE_CLASSIFICATION_CODE",
    "MERGE_DELTA_ROW_0"."NS_SUPPLY_FLAG$1" "NS_SUPPLY_FLAG",
    "MERGE_DELTA_ROW_0"."NS_EFF_DATE$1" "NS_EFF_DATE",
    "MERGE_DELTA_ROW_0"."NS_EXP_DATE$1" "NS_EXP_DATE",
    "MERGE_DELTA_ROW_0"."NS_ID$1" "NS_ID"
    FROM
    (SELECT
    "NS_ID" "NS_ID$1",
    "NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID$1",
    "NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE$1",
    "NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CODE$1",
    "NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG$1",
    "NS_EFF_DATE" "NS_EFF_DATE$1",
    "NS_EXP_DATE" "NS_EXP_DATE$1"
    FROM
    (SELECT
    (Case When (("SPLITTER_INPUT_SUBQUERY"."NS_ID_0_0" IS NULL) OR ((("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS')) OR ("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NOT NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS') AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0", 'J.HH24.MI.SS') >= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS'))) AND (("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" != "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2") OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" != "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0")))) then ("SPLITTER_INPUT_SUBQUERY"."NS_ID_1") else ("SPLITTER_INPUT_SUBQUERY"."NS_ID_0_0") end)/* MERGE_DELTA_ROW.OUTGRP1.NS_ID */ "NS_ID",
    "SPLITTER_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID_1"/* MERGE_DELTA_ROW.OUTGRP1.NS_OUTLET_SRC_ID */ "NS_OUTLET_SRC_ID",
    "SPLITTER_INPUT_SUBQUERY"."NS_PUBLISHER_CODE_1"/* MERGE_DELTA_ROW.OUTGRP1.NS_PUBLISHER_CODE */ "NS_PUBLISHER_CODE",
    "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1"/* MERGE_DELTA_ROW.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */ "NS_TITLE_CLASSIFICATION_CODE",
    "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1"/* MERGE_DELTA_ROW.OUTGRP1.NS_SUPPLY_FLAG */ "NS_SUPPLY_FLAG",
    (Case When (("SPLITTER_INPUT_SUBQUERY"."NS_ID_0_0" IS NULL)) then ((case when ("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1" < SYSDATE ) then ("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1") else ( SYSDATE ) end)) when ((("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS')) OR ("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NOT NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS') AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0", 'J.HH24.MI.SS') >= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS'))) AND (("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" != "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2") OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" != "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0"))) then ("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1") else ("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0") end)/* MERGE_DELTA_ROW.OUTGRP1.NS_EFF_DATE */ "NS_EFF_DATE",
    (Case When ((ROW_NUMBER() OVER (PARTITION BY "SPLITTER_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID_1","SPLITTER_INPUT_SUBQUERY"."NS_PUBLISHER_CODE_1" ORDER BY "SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1" DESC)) = 1) then (Case When (("SPLITTER_INPUT_SUBQUERY"."NS_ID_0_0" IS NULL) OR ((("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS')) OR ("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0" IS NOT NULL AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_0_0", 'J.HH24.MI.SS') <= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS') AND TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0", 'J.HH24.MI.SS') >= TO_CHAR("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1", 'J.HH24.MI.SS'))) AND (("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_1" != "SPLITTER_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CO_2") OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NOT NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0" IS NULL) OR ("SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_1" != "SPLITTER_INPUT_SUBQUERY"."NS_SUPPLY_FLAG_0_0")))) then ( TO_DATE('31-DEC-4000') ) else ("SPLITTER_INPUT_SUBQUERY"."NS_EXP_DATE_0_0") end) else (("SPLITTER_INPUT_SUBQUERY"."NS_EFF_DATE_1" - INTERVAL '1' SECOND)) end)/* MERGE_DELTA_ROW.OUTGRP1.NS_EXP_DATE */ "NS_EXP_DATE"
    FROM
    (SELECT
    "INGRP1"."NS_ID" "NS_ID_1",
    "INGRP1"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID_1",
    "INGRP1"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE_1",
    "INGRP1"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CO_1",
    "INGRP1"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG_1",
    "INGRP1"."NS_EFF_DATE" "NS_EFF_DATE_1",
    "INGRP1"."NS_EXP_DATE" "NS_EXP_DATE_1",
    "INGRP2"."NS_ID" "NS_ID_0_0",
    "INGRP2"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID_0_0",
    "INGRP2"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE_0_0",
    "INGRP2"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CO_2",
    "INGRP2"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG_0_0",
    "INGRP2"."NS_EFF_DATE" "NS_EFF_DATE_0_0",
    "INGRP2"."NS_EXP_DATE" "NS_EXP_DATE_0_0",
    "INGRP2"."DIMENSION_KEY" "DIMENSION_KEY_0"
    FROM
    ( SELECT
    "RETAILER_PUBLISHER_NS"."NS_ID" "NS_ID",
    "RETAILER_PUBLISHER_NS"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID",
    "RETAILER_PUBLISHER_NS"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE",
    "RETAILER_PUBLISHER_NS"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CODE",
    "RETAILER_PUBLISHER_NS"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG",
    "RETAILER_PUBLISHER_NS"."NS_EFF_DATE" "NS_EFF_DATE",
    "RETAILER_PUBLISHER_NS"."NS_EXP_DATE" "NS_EXP_DATE",
    "RETAILER_PUBLISHER_NS"."DIMENSION_KEY" "DIMENSION_KEY"
    FROM
    "RETAILER_PUBLISHER_NS" "RETAILER_PUBLISHER_NS"
    WHERE
    ( "RETAILER_PUBLISHER_NS"."DIMENSION_KEY" = "RETAILER_PUBLISHER_NS"."NS_ID" ) AND
    ( "RETAILER_PUBLISHER_NS"."NS_ID" IS NOT NULL ) ) "INGRP2"
    RIGHT OUTER JOIN ( SELECT
    NULL "NS_ID",
    "LOOKUP_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID$2" "NS_OUTLET_SRC_ID",
    "LOOKUP_INPUT_SUBQUERY"."NS_PUBLISHER_CODE$2" "NS_PUBLISHER_CODE",
    "LOOKUP_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CODE$2" "NS_TITLE_CLASSIFICATION_CODE",
    "LOOKUP_INPUT_SUBQUERY"."NS_SUPPLY_FLAG$2" "NS_SUPPLY_FLAG",
    "LOOKUP_INPUT_SUBQUERY"."NS_EFF_DATE$2" "NS_EFF_DATE",
    "LOOKUP_INPUT_SUBQUERY"."NS_EXP_DATE$2" "NS_EXP_DATE"
    FROM
    (SELECT
    "DEDUP_SRC"."NS_ID$3" "NS_ID$2",
    "DEDUP_SRC"."NS_OUTLET_SRC_ID$3" "NS_OUTLET_SRC_ID$2",
    "DEDUP_SRC"."NS_PUBLISHER_CODE$3" "NS_PUBLISHER_CODE$2",
    "DEDUP_SRC"."NS_TITLE_CLASSIFICATION_CODE$3" "NS_TITLE_CLASSIFICATION_CODE$2",
    "DEDUP_SRC"."NS_SUPPLY_FLAG$3" "NS_SUPPLY_FLAG$2",
    "DEDUP_SRC"."NS_EFF_DATE$3" "NS_EFF_DATE$2",
    "DEDUP_SRC"."NS_EXP_DATE$3" "NS_EXP_DATE$2"
    FROM
    (SELECT
    NULL/* DEDUP_SRC.OUTGRP1.NS_ID */ "NS_ID$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_CUSTOMER_ID"/* EXPR_SRC.OUTGRP1.NS_OUTLET_SRC_ID */)/* DEDUP_SRC.OUTGRP1.NS_OUTLET_SRC_ID */ "NS_OUTLET_SRC_ID$3",
    ((to_char("PUB_AGENT_MATRIX_CC"."PAM_PUBLISHER_CODE")/* EXP.OUTGRP1.PAM_PUBLISHER_CODE */)/* EXPR_SRC.OUTGRP1.NS_PUBLISHER_CODE */)/* DEDUP_SRC.OUTGRP1.NS_PUBLISHER_CODE */ "NS_PUBLISHER_CODE$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_TITLCLAS_CODE"/* EXPR_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */)/* DEDUP_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */ "NS_TITLE_CLASSIFICATION_CODE$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_SUPPLY_FLAG"/* EXPR_SRC.OUTGRP1.NS_SUPPLY_FLAG */)/* DEDUP_SRC.OUTGRP1.NS_SUPPLY_FLAG */ "NS_SUPPLY_FLAG$3",
    MIN(("PUB_AGENT_MATRIX_CC"."PAM_EFFECTIVE_DATE"/* EXPR_SRC.OUTGRP1.NS_EFF_DATE */)) KEEP (DENSE_RANK FIRST ORDER BY NULL/* EXPR_SRC.OUTGRP1.NS_ID */)/* DEDUP_SRC.OUTGRP1.NS_EFF_DATE */ "NS_EFF_DATE$3",
    NULL/* DEDUP_SRC.OUTGRP1.NS_EXP_DATE */ "NS_EXP_DATE$3"
    FROM
    "REFSTG"."PUB_AGENT_MATRIX_CC" "PUB_AGENT_MATRIX_CC"
    WHERE
    ( "PUB_AGENT_MATRIX_CC"."PAM_ADD_REMOVE_FLAG" = 'A' )
    GROUP BY
    ("PUB_AGENT_MATRIX_CC"."PAM_CUSTOMER_ID"/* EXPR_SRC.OUTGRP1.NS_OUTLET_SRC_ID */), ((to_char("PUB_AGENT_MATRIX_CC"."PAM_PUBLISHER_CODE")/* EXP.OUTGRP1.PAM_PUBLISHER_CODE */)/* EXPR_SRC.OUTGRP1.NS_PUBLISHER_CODE */), ("PUB_AGENT_MATRIX_CC"."PAM_TITLCLAS_CODE"/* EXPR_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */), ("PUB_AGENT_MATRIX_CC"."PAM_SUPPLY_FLAG"/* EXPR_SRC.OUTGRP1.NS_SUPPLY_FLAG */),NULL,NULL/* RETAILER_PUBLISHER_NS.DEDUP_SRC */) "DEDUP_SRC") "LOOKUP_INPUT_SUBQUERY"
    WHERE
    ( NOT ( "LOOKUP_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID$2" IS NULL AND "LOOKUP_INPUT_SUBQUERY"."NS_PUBLISHER_CODE$2" IS NULL ) ) ) "INGRP1" ON ( ( ( "INGRP2"."NS_EFF_DATE" IS NULL OR ( ( "INGRP2"."NS_EXP_DATE" IS NULL AND TO_CHAR ( "INGRP2"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) ) OR ( "INGRP2"."NS_EXP_DATE" IS NOT NULL AND TO_CHAR ( "INGRP2"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) AND TO_CHAR ( "INGRP2"."NS_EXP_DATE" , 'J.HH24.MI.SS' ) >= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) ) ) ) ) AND ( ( "INGRP2"."NS_PUBLISHER_CODE" = "INGRP1"."NS_PUBLISHER_CODE" ) ) AND ( ( "INGRP2"."NS_OUTLET_SRC_ID" = "INGRP1"."NS_OUTLET_SRC_ID" ) ) )) "SPLITTER_INPUT_SUBQUERY"
    WHERE
    ( ( ( "SPLITTER_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID_1" = "SPLITTER_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID_0_0" AND "SPLITTER_INPUT_SUBQUERY"."NS_PUBLISHER_CODE_1" = "SPLITTER_INPUT_SUBQUERY"."NS_PUBLISHER_CODE_0_0" ) ) OR ( "SPLITTER_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID_0_0" IS NULL AND "SPLITTER_INPUT_SUBQUERY"."NS_PUBLISHER_CODE_0_0" IS NULL ) )
    UNION
    SELECT
    "DEDUP_SCD_SRC"."NS_ID$4" "NS_ID",
    "DEDUP_SCD_SRC"."NS_OUTLET_SRC_ID$4" "NS_OUTLET_SRC_ID",
    "DEDUP_SCD_SRC"."NS_PUBLISHER_CODE$4" "NS_PUBLISHER_CODE",
    "DEDUP_SCD_SRC"."NS_TITLE_CLASSIFICATION_CODE$4" "NS_TITLE_CLASSIFICATION_CODE",
    "DEDUP_SCD_SRC"."NS_SUPPLY_FLAG$4" "NS_SUPPLY_FLAG",
    "DEDUP_SCD_SRC"."NS_EFF_DATE$4" "NS_EFF_DATE",
    "DEDUP_SCD_SRC"."NS_EXP_DATE$4" "NS_EXP_DATE"
    FROM
    (SELECT
    "AGG_INPUT"."NS_ID$5"/* DEDUP_SCD_SRC.OUTGRP1.NS_ID */ "NS_ID$4",
    "AGG_INPUT"."NS_OUTLET_SRC_ID$5"/* DEDUP_SCD_SRC.OUTGRP1.NS_OUTLET_SRC_ID */ "NS_OUTLET_SRC_ID$4",
    "AGG_INPUT"."NS_PUBLISHER_CODE$5"/* DEDUP_SCD_SRC.OUTGRP1.NS_PUBLISHER_CODE */ "NS_PUBLISHER_CODE$4",
    MIN("AGG_INPUT"."NS_TITLE_CLASSIFICATION_CODE$5") KEEP (DENSE_RANK FIRST ORDER BY "AGG_INPUT"."NS_TITLE_CLASSIFICATION_CODE$5" NULLS LAST)/* DEDUP_SCD_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */ "NS_TITLE_CLASSIFICATION_CODE$4",
    MIN("AGG_INPUT"."NS_SUPPLY_FLAG$5") KEEP (DENSE_RANK FIRST ORDER BY "AGG_INPUT"."NS_SUPPLY_FLAG$5" NULLS LAST)/* DEDUP_SCD_SRC.OUTGRP1.NS_SUPPLY_FLAG */ "NS_SUPPLY_FLAG$4",
    MIN("AGG_INPUT"."NS_EFF_DATE$5") KEEP (DENSE_RANK FIRST ORDER BY "AGG_INPUT"."NS_EFF_DATE$5" NULLS LAST)/* DEDUP_SCD_SRC.OUTGRP1.NS_EFF_DATE */ "NS_EFF_DATE$4",
    MIN("AGG_INPUT"."NS_EXP_DATE$5") KEEP (DENSE_RANK FIRST ORDER BY "AGG_INPUT"."NS_EXP_DATE$5" NULLS LAST)/* DEDUP_SCD_SRC.OUTGRP1.NS_EXP_DATE */ "NS_EXP_DATE$4"
    FROM
    (SELECT
    "SPLITTER_INPUT_SUBQUERY$1"."NS_ID_0_0$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_ID */ "NS_ID$5",
    "SPLITTER_INPUT_SUBQUERY$1"."NS_OUTLET_SRC_ID_1$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_OUTLET_SRC_ID */ "NS_OUTLET_SRC_ID$5",
    "SPLITTER_INPUT_SUBQUERY$1"."NS_PUBLISHER_CODE_1$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_PUBLISHER_CODE */ "NS_PUBLISHER_CODE$5",
    "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_2$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */ "NS_TITLE_CLASSIFICATION_CODE$5",
    "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_0_0$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_SUPPLY_FLAG */ "NS_SUPPLY_FLAG$5",
    "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_0_0$1"/* UPDATE_DELTA_ROW.OUTGRP1.NS_EFF_DATE */ "NS_EFF_DATE$5",
    ("SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_1$1" - INTERVAL '1' SECOND)/* UPDATE_DELTA_ROW.OUTGRP1.NS_EXP_DATE */ "NS_EXP_DATE$5"
    FROM
    (SELECT
    "INGRP1"."NS_ID" "NS_ID_1$1",
    "INGRP1"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID_1$1",
    "INGRP1"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE_1$1",
    "INGRP1"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CO_1$1",
    "INGRP1"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG_1$1",
    "INGRP1"."NS_EFF_DATE" "NS_EFF_DATE_1$1",
    "INGRP1"."NS_EXP_DATE" "NS_EXP_DATE_1$1",
    "INGRP2"."NS_ID" "NS_ID_0_0$1",
    "INGRP2"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID_0_0$1",
    "INGRP2"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE_0_0$1",
    "INGRP2"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CO_2$1",
    "INGRP2"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG_0_0$1",
    "INGRP2"."NS_EFF_DATE" "NS_EFF_DATE_0_0$1",
    "INGRP2"."NS_EXP_DATE" "NS_EXP_DATE_0_0$1",
    "INGRP2"."DIMENSION_KEY" "DIMENSION_KEY_0$1"
    FROM
    ( SELECT
    "RETAILER_PUBLISHER_NS"."NS_ID" "NS_ID",
    "RETAILER_PUBLISHER_NS"."NS_OUTLET_SRC_ID" "NS_OUTLET_SRC_ID",
    "RETAILER_PUBLISHER_NS"."NS_PUBLISHER_CODE" "NS_PUBLISHER_CODE",
    "RETAILER_PUBLISHER_NS"."NS_TITLE_CLASSIFICATION_CODE" "NS_TITLE_CLASSIFICATION_CODE",
    "RETAILER_PUBLISHER_NS"."NS_SUPPLY_FLAG" "NS_SUPPLY_FLAG",
    "RETAILER_PUBLISHER_NS"."NS_EFF_DATE" "NS_EFF_DATE",
    "RETAILER_PUBLISHER_NS"."NS_EXP_DATE" "NS_EXP_DATE",
    "RETAILER_PUBLISHER_NS"."DIMENSION_KEY" "DIMENSION_KEY"
    FROM
    "RETAILER_PUBLISHER_NS" "RETAILER_PUBLISHER_NS"
    WHERE
    ( "RETAILER_PUBLISHER_NS"."DIMENSION_KEY" = "RETAILER_PUBLISHER_NS"."NS_ID" ) AND
    ( "RETAILER_PUBLISHER_NS"."NS_ID" IS NOT NULL ) ) "INGRP2"
    RIGHT OUTER JOIN ( SELECT
    NULL "NS_ID",
    "LOOKUP_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID$2" "NS_OUTLET_SRC_ID",
    "LOOKUP_INPUT_SUBQUERY"."NS_PUBLISHER_CODE$2" "NS_PUBLISHER_CODE",
    "LOOKUP_INPUT_SUBQUERY"."NS_TITLE_CLASSIFICATION_CODE$2" "NS_TITLE_CLASSIFICATION_CODE",
    "LOOKUP_INPUT_SUBQUERY"."NS_SUPPLY_FLAG$2" "NS_SUPPLY_FLAG",
    "LOOKUP_INPUT_SUBQUERY"."NS_EFF_DATE$2" "NS_EFF_DATE",
    "LOOKUP_INPUT_SUBQUERY"."NS_EXP_DATE$2" "NS_EXP_DATE"
    FROM
    (SELECT
    "DEDUP_SRC"."NS_ID$3" "NS_ID$2",
    "DEDUP_SRC"."NS_OUTLET_SRC_ID$3" "NS_OUTLET_SRC_ID$2",
    "DEDUP_SRC"."NS_PUBLISHER_CODE$3" "NS_PUBLISHER_CODE$2",
    "DEDUP_SRC"."NS_TITLE_CLASSIFICATION_CODE$3" "NS_TITLE_CLASSIFICATION_CODE$2",
    "DEDUP_SRC"."NS_SUPPLY_FLAG$3" "NS_SUPPLY_FLAG$2",
    "DEDUP_SRC"."NS_EFF_DATE$3" "NS_EFF_DATE$2",
    "DEDUP_SRC"."NS_EXP_DATE$3" "NS_EXP_DATE$2"
    FROM
    (SELECT
    NULL/* DEDUP_SRC.OUTGRP1.NS_ID */ "NS_ID$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_CUSTOMER_ID"/* EXPR_SRC.OUTGRP1.NS_OUTLET_SRC_ID */)/* DEDUP_SRC.OUTGRP1.NS_OUTLET_SRC_ID */ "NS_OUTLET_SRC_ID$3",
    ((to_char("PUB_AGENT_MATRIX_CC"."PAM_PUBLISHER_CODE")/* EXP.OUTGRP1.PAM_PUBLISHER_CODE */)/* EXPR_SRC.OUTGRP1.NS_PUBLISHER_CODE */)/* DEDUP_SRC.OUTGRP1.NS_PUBLISHER_CODE */ "NS_PUBLISHER_CODE$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_TITLCLAS_CODE"/* EXPR_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */)/* DEDUP_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */ "NS_TITLE_CLASSIFICATION_CODE$3",
    ("PUB_AGENT_MATRIX_CC"."PAM_SUPPLY_FLAG"/* EXPR_SRC.OUTGRP1.NS_SUPPLY_FLAG */)/* DEDUP_SRC.OUTGRP1.NS_SUPPLY_FLAG */ "NS_SUPPLY_FLAG$3",
    MIN(("PUB_AGENT_MATRIX_CC"."PAM_EFFECTIVE_DATE"/* EXPR_SRC.OUTGRP1.NS_EFF_DATE */)) KEEP (DENSE_RANK FIRST ORDER BY NULL/* EXPR_SRC.OUTGRP1.NS_ID */)/* DEDUP_SRC.OUTGRP1.NS_EFF_DATE */ "NS_EFF_DATE$3",
    NULL/* DEDUP_SRC.OUTGRP1.NS_EXP_DATE */ "NS_EXP_DATE$3"
    FROM
    "REFSTG"."PUB_AGENT_MATRIX_CC" "PUB_AGENT_MATRIX_CC"
    WHERE
    ( "PUB_AGENT_MATRIX_CC"."PAM_ADD_REMOVE_FLAG" = 'A' )
    GROUP BY
    ("PUB_AGENT_MATRIX_CC"."PAM_CUSTOMER_ID"/* EXPR_SRC.OUTGRP1.NS_OUTLET_SRC_ID */), ((to_char("PUB_AGENT_MATRIX_CC"."PAM_PUBLISHER_CODE")/* EXP.OUTGRP1.PAM_PUBLISHER_CODE */)/* EXPR_SRC.OUTGRP1.NS_PUBLISHER_CODE */), ("PUB_AGENT_MATRIX_CC"."PAM_TITLCLAS_CODE"/* EXPR_SRC.OUTGRP1.NS_TITLE_CLASSIFICATION_CODE */), ("PUB_AGENT_MATRIX_CC"."PAM_SUPPLY_FLAG"/* EXPR_SRC.OUTGRP1.NS_SUPPLY_FLAG */),NULL,NULL/* RETAILER_PUBLISHER_NS.DEDUP_SRC */) "DEDUP_SRC") "LOOKUP_INPUT_SUBQUERY"
    WHERE
    ( NOT ( "LOOKUP_INPUT_SUBQUERY"."NS_OUTLET_SRC_ID$2" IS NULL AND "LOOKUP_INPUT_SUBQUERY"."NS_PUBLISHER_CODE$2" IS NULL ) ) ) "INGRP1" ON ( ( ( "INGRP2"."NS_EFF_DATE" IS NULL OR ( ( "INGRP2"."NS_EXP_DATE" IS NULL AND TO_CHAR ( "INGRP2"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) ) OR ( "INGRP2"."NS_EXP_DATE" IS NOT NULL AND TO_CHAR ( "INGRP2"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) AND TO_CHAR ( "INGRP2"."NS_EXP_DATE" , 'J.HH24.MI.SS' ) >= TO_CHAR ( "INGRP1"."NS_EFF_DATE" , 'J.HH24.MI.SS' ) ) ) ) ) AND ( ( "INGRP2"."NS_PUBLISHER_CODE" = "INGRP1"."NS_PUBLISHER_CODE" ) ) AND ( ( "INGRP2"."NS_OUTLET_SRC_ID" = "INGRP1"."NS_OUTLET_SRC_ID" ) ) )) "SPLITTER_INPUT_SUBQUERY$1"
    WHERE
    ( "SPLITTER_INPUT_SUBQUERY$1"."NS_OUTLET_SRC_ID_1$1" = "SPLITTER_INPUT_SUBQUERY$1"."NS_OUTLET_SRC_ID_0_0$1" AND "SPLITTER_INPUT_SUBQUERY$1"."NS_PUBLISHER_CODE_1$1" = "SPLITTER_INPUT_SUBQUERY$1"."NS_PUBLISHER_CODE_0_0$1" ) AND
    ( ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EXP_DATE_0_0$1" IS NULL AND TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_0_0$1" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_1$1" , 'J.HH24.MI.SS' ) ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EXP_DATE_0_0$1" IS NOT NULL AND TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_0_0$1" , 'J.HH24.MI.SS' ) <= TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_1$1" , 'J.HH24.MI.SS' ) AND TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EXP_DATE_0_0$1" , 'J.HH24.MI.SS' ) >= TO_CHAR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_EFF_DATE_1$1" , 'J.HH24.MI.SS' ) ) ) AND
    ( ( "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_1$1" IS NULL AND "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_2$1" IS NOT NULL ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_1$1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_2$1" IS NULL ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_1$1" != "SPLITTER_INPUT_SUBQUERY$1"."NS_TITLE_CLASSIFICATION_CO_2$1" ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_1$1" IS NULL AND "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_0_0$1" IS NOT NULL ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_1$1" IS NOT NULL AND "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_0_0$1" IS NULL ) OR ( "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_1$1" != "SPLITTER_INPUT_SUBQUERY$1"."NS_SUPPLY_FLAG_0_0$1" ) )) "AGG_INPUT"
    GROUP BY
    "AGG_INPUT"."NS_ID$5", "AGG_INPUT"."NS_OUTLET_SRC_ID$5", "AGG_INPUT"."NS_PUBLISHER_CODE$5"/* RETAILER_PUBLISHER_NS.DEDUP_SCD_SRC */) "DEDUP_SCD_SRC") ) "MERGE_DELTA_ROW_0"
    MERGE_SUBQUERY
    ON (
    "RETAILER_PUBLISHER_NS"."NS_OUTLET_SRC_ID" = "MERGE_SUBQUERY"."NS_OUTLET_SRC_ID" AND
    "RETAILER_PUBLISHER_NS"."NS_PUBLISHER_CODE" = "MERGE_SUBQUERY"."NS_PUBLISHER_CODE" AND
    "RETAILER_PUBLISHER_NS"."NS_EFF_DATE" = "MERGE_SUBQUERY"."NS_EFF_DATE" AND
    "RETAILER_PUBLISHER_NS"."NS_ID" = "MERGE_SUBQUERY"."NS_ID"
    WHEN MATCHED THEN
    UPDATE
    SET
    "NS_TITLE_CLASSIFICATION_CODE" = "MERGE_SUBQUERY"."NS_TITLE_CLASSIFICATION_CODE",
    "NS_SUPPLY_FLAG" = "MERGE_SUBQUERY"."NS_SUPPLY_FLAG",
    "NS_EXP_DATE" = "MERGE_SUBQUERY"."NS_EXP_DATE"
    WHEN NOT MATCHED THEN
    INSERT
    ("RETAILER_PUBLISHER_NS"."NS_ID",
    "RETAILER_PUBLISHER_NS"."NS_OUTLET_SRC_ID",
    "RETAILER_PUBLISHER_NS"."NS_PUBLISHER_CODE",
    "RETAILER_PUBLISHER_NS"."NS_TITLE_CLASSIFICATION_CODE",
    "RETAILER_PUBLISHER_NS"."NS_SUPPLY_FLAG",
    "RETAILER_PUBLISHER_NS"."NS_EFF_DATE",
    "RETAILER_PUBLISHER_NS"."NS_EXP_DATE",
    "RETAILER_PUBLISHER_NS"."DIMENSION_KEY")
    VALUES
    ("RETAILER_PUBLISHER_NS_SEQ".NEXTVAL,
    "MERGE_SUBQUERY"."NS_OUTLET_SRC_ID",
    "MERGE_SUBQUERY"."NS_PUBLISHER_CODE",
    "MERGE_SUBQUERY"."NS_TITLE_CLASSIFICATION_CODE",
    "MERGE_SUBQUERY"."NS_SUPPLY_FLAG",
    "MERGE_SUBQUERY"."NS_EFF_DATE",
    "MERGE_SUBQUERY"."NS_EXP_DATE",
    "RETAILER_PUBLISHER_NS_SEQ".CURRVAL)
    Explain plan:
    MERGE STATEMENT, GOAL = ALL_ROWS               1412     2     286
    MERGE     DW     RETAILER_PUBLISHER_NS               
    VIEW     DW                    
    SEQUENCE     DW     RETAILER_PUBLISHER_NS_SEQ               
    HASH JOIN OUTER               1412     2     256
    VIEW     DW          940     2     170
    SORT UNIQUE               940     2     218
    UNION-ALL                         
    WINDOW SORT               470     1     133
    FILTER                         
    NESTED LOOPS OUTER               468     1     133
    VIEW     DW          4     1     65
    SORT GROUP BY               4     1     25
    TABLE ACCESS FULL     REFSTG     PUB_AGENT_MATRIX_CC     3     1     25
    VIEW     SYS          464     1     68
    VIEW     DW          464     1     68
    TABLE ACCESS FULL     DW     RETAILER_PUBLISHER_NS     464     1     43
    VIEW     DW          469     1     85
    SORT GROUP BY               469     1     90
    NESTED LOOPS               468     1     90
    VIEW     DW          4     1     37
    SORT GROUP BY               4     1     25
    TABLE ACCESS FULL     REFSTG     PUB_AGENT_MATRIX_CC     3     1     25
    VIEW     SYS          464     1     53
    VIEW     DW          464     1     68
    TABLE ACCESS FULL     DW     RETAILER_PUBLISHER_NS     464     1     43
    TABLE ACCESS FULL     DW     RETAILER_PUBLISHER_NS     467     337417     14508931
    Is this similar to the sql generated at your end? Do you use special loading hints, anything specail with indexing - we have tried standard indexing.
    Does this look untoward - have you any other suggestions?
    Thanks for your interest.

  • Sap notes for 103 movement type and 105 movement types in sap

    Hi all,
    Please let me know if there are any sap notes for 103 movement type and 105 movement type in sap as soon as possible
    points will be awarded.
    thanking u in advance,
    srinivas.

    There are many SAP notes related to these movement types e.g 514609,750836,
    533833, 808029, 317823,etc.
    You can search them at http://service.sap.com
    Regards,
    Amit

  • ConfigureCombined invoice for Delivery and Order related billing items

    Dear Guru's,
    Please tell us what settings one have to do in copy controls (like for TAS "OR to F2" & TAN "LF to F2") as to Combined invoice for Delivery and Order related billing items.
    Regards,
    Sai

    Hi Sai,
    for TAS "OR to F2"
    T-code-VTFA
    Target Billing Type --"F2"        and Source Document as "OR"
    At header level you can select .
    Copying requirements "001" Header/order related
    Tick mark copy item number
    At item Level you give
    Copy requirements "028" Order related 3rd party item
    Data VBRK/VBRP= 000
    Billing quantity="A"
    Pos/Neg quantity="+"
    Price type="G"
    and Save
    2)TAN "LF to F2
    Go to Tcode-VTFL
    Target Billing type "F2"   and source document as "LF"
    In header details you give
    Copy requirements "001" Header-order related
    detr export dta="B"
    Allocatio number="B"
    Reference number="A"
    Tick mark copy item number
    In item details you give
    Copy requirements"004" delivery related item
    Data VBRK/VBRP="003" Single invoive"
    Billing qantity="D"
    Pos/neg quant="+"
    Price type=G"
    Price source"E"
    Regards
    Seegal

Maybe you are looking for