Keys in DSO

Hi guys
I am writning technical specification where I have to specify the order of keys in a new DSO.
1.On what basis do I choose order of keys in DSO?how will this order help me?
2.While creating DSO in BW,where do we have setting to choose this order of keys in DSO?
Thanks.

Hi:
1.On what basis do I choose order of keys in DSO?how will this order help me?
Extracted from SAP Note 384023 - "Optimizing performance of ODS objects"
5. Indexing
              You should use selection criteria for queries on ODS objects. If the key fields are specified, the system uses the existing primary index. The characteristic to which the system accesses frequently should be left-aligned.
              However, if the key fields are only incompletely specified in the selection criteria (recognizable in the SQL trace), you can optimize the runtime of the query by creating additional indexes. You must maintain these secondary indexes manually in Transaction SE11.
2.While creating DSO in BW,where do we have setting to choose this order of keys in DSO?
The order of the Keys in DSO is set on of the Key Fields section (from the top to the bottom).
Regards,
Francisco Milán.

Similar Messages

  • Different Keys of DSO transformation nullfy record info with RecordMode 'R'

    Two DSOs:  DSO1 and DSO2 and we load data from DSO1 to DSO2
    DSO1 has the following fields:
    Delivery Doc Number (Key field), Delivery Doc Item (Key field), SO (data field), SO Item(data field), Delivery Quantity(data field)
    DSO2 has the following fields:
    SO(Key field), SO Item(Key field), Delivery Doc Number (data field), Delivery Item (data field), Delivery Quantity (data field)
    The problem is a record with Record Mode = 'R' in DSO will be transferred to DSO2 and makes this record in DSO2 only contains SO/SO Item values, all other field values are set to null.    Or in other word, a cancelled Delivery also causes it's corresponding SO cancelled which is absoluted incorrect! 
    We are thinking out a solution to place some coding in the start routine to overcome this problem.  Maybe to verify if Record Mode ='R', then set it as a null value?  But null value for Record Mode means After Image, not sure if it works or not.  Anyone's idea is greatly appreciated!

    Hello ,
    Please follow these steps:
    1. Remove the 0recordmode mapping in the Technical group of trhe transafermations between DSO's.
    2. Write the logic as below in the transfermation routine in each of the Key figures ( Delivery Qty  Etc ... ) .
       -   IF recordmode EQ '' or recordmode eq 'N'.
       -   RESULT = Delivery Qty.
       -   elseif  recordmode eq 'X' or recordmode eq 'R'  .
       -   RESULT = -1 * Delivery Qty
           endif.
    Hope this helps.
    Thanks,
    Ravi.

  • Primary Key for DSO (2LIS_11_VAKON)

    Dear all:
    I have to create a Standard DSO out of 2LIS_11_VAKON Datasource. My question is how do I define the Primary Key for this DSO...
    I mean: (Doc.Number + Pos.Number) is enough?. or do I need some extra(s) field(s) in the Primary Key?
    Regards.

    Hi
    I have to create a Standard DSO out of 2LIS_11_VAKON Datasource. My question is how do I define the Primary Key for this DSO...
    I mean: (Doc.Number + Pos.Number) is enough?. or do I need some extra(s) field(s) in the Primary Key?
    You can Install the Standard content You cannot Create any Standard DSO.
    You can Create a customized DSO . Though the DSO is a Table There is no need of Primery Key Function here. Hope You are Talking about Data Fields and Key Fields.
    But there is a Standard DSO FOR  0SD_O05 Order: Condition Data.. you can install the same.
    Both fields are needed to report analytical data  based on your criteria.
    http://help.sap.com/saphelp_nw70/helpdata/EN/3c/7b88408bc0bb4de10000000a1550b0/frameset.htm

  • How to find the right primary key for DSO from Business Content

    According to best practice design, it is reccomended to make a  DSO where all fields from Business COntent Datasources are transferred.
    But, how to find the right primary indeks ?
    Any good suggestions ?
    For many of the Business Content dataflows there are not DSOs present, so ther e is no tip to get from the dokumentations as gfar as I have found.
    best Regards
    Ingrid

    Hi Ingrid,
    Your question will be perfect in case if you are going for a Custom cube.
    You will not have any problem when you create a Datasource in R/3 level even if it is been built on a single table or on view.
    Only point that you want to know how to design my Key fields in ODS.
    This will be purely depends at what level that you want to bring the data.
    Egg:-
    If you run the data source in RSA3 and check for Each GL if you have 10 liine items and you want all the 10 line items to be transfered to BW.
    In this case you need to check what is the unique combination of fields that is making this lineitems to exists as 10.then include all those fields into Your ODS Key Fields.
    This way you can have 10 records for that perticular GL in both sides, by which u will make sure that the data is been completely transfered.
    If in case if you clude your own Key fields then you will get the correct Total in report for each GL but you can't see all those 10 line items.
    For any case you need to figureout how many records that you want to take into BW based on that check the fields that makes it unique and then add them to ODS Keyfields that will solve your requirement.
    I think this will clear your doubt.
    Best Regards,
    VNK.

  • Issue in Data from DSO to DSO Target with different Key

    Hello All,
    I am having Issue in Data from DSO to DSO Target with different Key
    Source DSO has Employee + Wage + Post numner as key and Target has Employee + Wage Type as key.
    DSO semantic grouping works like Group By clause in sql, is my understanding right ?
    Also if someone can explain this with a small example, it would be great.
    Many Thanks
    Krishna

    Dear, as explained earlier your issue has nothing to do with semantic grouping .
    Semantic grouping is only usefull when you have written a routine in the transformation for calculations and in error handling .
    Please go through this blog which explains very clearly the use of semantic grouping .
    http://scn.sap.com/community/data-warehousing/netweaver-bw/blog/2013/06/16/semantic-groups-in-dtp
    Now coming to your above question
    DSO 1
    Employee WageTyp Amount
    100          aa          200
    200          aa          200
    100          bb          400
    100          cc          300
    If we have semantic group as Employee .   If we have Employee as key of the target DSO and update type as summation .
    then target DSO will have
    Emp                Amount
    100                 700
    200                 200
    In this case Wage type will be the last record arriving from the data package . If the record 100  cc  300 is arrivng last then wage type will be cc .
    2) Case 2
    DSO 1
    Employee WageTyp Amount
    100          aa          200
    200          aa          200
    100          bb          400
    100          aa          300
    if we do Semantic grouping with Emp and Wage Type   If we have Employee and wage type as key of the target DSO and update type as summation .
    then target DSO will have
    Emp     Wage      Amount
    100          aa          500
    200          aa          200
    100          bb          400
    Hope this helps .

  • Duplicate records to DSO

    Hello Friends,
    we have an issue with the Duplicate records in to DSO let me enplain the senarion
    The Heder and Details data is loaded to saperate DSO's
    and these 2 DSO's data shuld get merged in the third one,
    the Key fields in
    DSO 1 : DWRECID, 0AC_DOC_NO
    DSO 2 : DWRECID , DWPOSNR
    DSO 3 will fetch data from these the above 2
    Key Fields are : ]
    DWTSLO,
    DWRECID,
    DWEDAT ,
    AC_DOC_NO
    DWPOSNR,
    0CUSTOMER
    Now the data shuld be merge in to a single record in the 3 rd dso
    DSO 1  do not have the DWPOSNR object in its data fields also.
    we even have start routine  data from DSO 1 to populate  some values in the result fields from dso2 ,
    Please provide if you have any inputs to merge the data record wise.
    and also give me all the posibilites or options we have to over write " apart from mappings " the data ,

    Hi,
    You should go for creating an Infoset instead of creating third DSO.
    In that DSO provide the Keys of DSOs and the Common records with those keys will be merged  in that Infoset.
    Hope It Helps.
    Regards
    Praeon

  • DataLoad into Write-optimized DSO with DTP and semantic groups

    hi gurus,
    i'm going crazy with my current problem.
    i searched in the other posts of this topic, but i did not found a solution.
    here my situation:
    i created a w-o-DSO with semantic key (0ucinstalla, 0calmonth, zbelnum, 0unit) and three key figures.
    now i'm loading from several cubes data into the DSO. (i need the historical data)
    in every transformation, i implemented an expertroutine which collects the data into the result_package.
    in the routine, i even clear the record number before collecting the result_rows.
    in the DTPs, i'm using a semantic group for 0ucinstalla in order to select all rows for one 0ucinstalla into one data-package.
    each DTP has to run one time in full mode.
    but when i schedule the third DTP, i get the message: "duplicate record"
    i checked the active data in dso. there was no record with that semantic key.
    i found a record with the same 0ucinstalle for a diferent month - in my opinion, thats no duplicate record...
    is there a dependence between semantic key in DSO and semantic group in DTP?
    how can i solve this error?
    regards,
    philipp

    Hi,
    thx for your fast replies!!
    @ Passing by:
    I know the option "Do not check uniqueness of data".
    At DSO do not arrive any duplicates and i would like to use the check of uniqueness in future, if there really arrive duplicate records.
    @ Durgesh Gandewar: thx for the hint, but i also checked this website...
    Regards,
    Philipp

  • Merging 2 DSO data to another DSO

    Have a query w.r.to merge of DSO data.
    DSO 1
    100    10    ABC  24.5
    100    20    DEF  35.6
    DSO 2
    100   10  1001  56.8
    100   10  1002  58.9
    Now, in DSO 1, 100, 10 are header and item which are keys
    In DSO 2, 1001, 1002 are document no so 3 keys. However this data might get updated later than DSO 1 as part of delta. Below is final output req
    DSO 3 -  same keys as DSO 2. Planning to do delta dtp from both these dsos to DSO 3 without any ABAP.
    100   10  1001  ABC  24.5  56.8
    100   20     -      DEF  35.6    - 
    100   10  1002  ABC  24.5  58.9
    Now if there is a new record for 20 in DSO 2, will it update the 2nd record or will it create a new record as below? I think this should overwrite 2nd record in DSO 3 and not like below. Please confirm
    100   10  1001  ABC  24.5  56.8
    100   20     -      DEF  35.6    -  
    100   10  1002  ABC  24.5  58.9
    100   20  1002  DEF  35.6  65.7

    Sorry for the confusion....I got the below output in DSO3:
    100    10     -       ABC   24.5      -
    100    20     -       DEF   35.6      -
    101    10     -       LMN   67.2      -
    100   10  1001     -          -        56.8
    100   10  1002     -          -        58.9
    Now my requirement is to only show the header and item data that has document no. If there is no document no, then show the header and item data with blank document no.
    Eg:  Output should be as below:
    100   10  1001     ABC    24.5      56.8
    100   10  1002     ABC    24.5      58.9
    100   20      -         DEF    35.6        -
    101   10      -         LMN    67.2       -
    Now if there is a new document no for 3rd record above in next delta with doc no 1003, final o/p needs to be as below. The previous record need not be shown...
    100   10  1001     ABC    24.5      56.8
    100   10  1002     ABC    24.5      58.9
    100   20  1003     DEF    35.6       88.5
    101   10      -         LMN    67.2       -
    This seems to be through ABAP. Can some one suggest and help?

  • Loading ACE Results to LA Key Figures

    Hello,
    I try to load Arccrual Engine Costing Results from DSO (0ACE_DS01) to Leasing Accounting Key Figures DSO (0FIL_DS04) but during the data processing  I get   Error 2 in update:
    Cannot determine fiscal year/period for date 99993112 and variant.
    Errorcode: RS_BCT_CRM_FIN006
    Could somebody help? Thanx in advance

    Hi,
    Since your requirement is that the Component subtotals should pick up the last value/aggregate and that the Total Material result to be sum of the components, can you just try as below.
    1)Create a formula on the key figure . In Aggregation tab  select Exception Aggregation  as Average and Reference characteristic as Component.Keep this formula hidden
    2)Create a formula using the above formula. In Aggregation tab  select Exception Aggregation as Total and Refernce characteristic as Material.Display this formula as Hours.
    Thanks.

  • Multiprovider report problem

    Let me explain you the Multiprovider report with example .
    Multiprovider is created based on Basic cube and DSO . Basic cube has Billing doc number in line item dimension .
    DSO has Billing document number , Item number and Partner function as primary key.
    I have Created one diemension on Multiprovider where I have assigned Billing document number , and other 2 data fields from DSO which are not available in Cube .  Is it correct design ?
    DSO have below records ..  - Doc no , Item and PF are primary key of DSO .
    Billing doc no      Partner function     Personal Number    Customer number
    100                                 ER                                1
    100                                 Y1                                                              555
    100                                  Y2                                                              111
    In Cube I have below records -
    Billing doc no     Sales Org          Netvalue            Total sale         
    100                      001                      $ 3000               $3200
    200                        001                    $ 5000                $5100
    When I execute the report based on MP by partner function i should get below result.
    Billing doc   PF    Personal Number    Customer number  Netvalue   Total sales
    100             ER         1                              555                       3000          3200
    Is it possible ?
    Let me know if my question is not clear .
    Regard

    Hi
    Multiprovider is a union of infoproviders.So you can achieve the report you want by building a Multiprovider with the Cube and DSO.You have to assign the Billing doc no to both Cube and DSO during the craetion of the Multiprovider.
    When you execute the report on the MP on Purchase Order, all the values of Billing doc no will be fetched from both cube and DSO(as MP is a union).
    According you can set a filter to fetch only specfic data from a specific part-provider of the Multiprovider.
    Also At query Designer level a InfoObject : 0INFOPROV will be available which will give and option to fetch the data only from a specifi part provider of MP if required.
    help link : http://help.sap.com/saphelp_erp2004/helpdata/EN/52/1ddc37a3f57a07e10000009b38f889/content.htm
    Hope this helps!!
    Regards, Hyma

  • Multiprovider design -problem

    I am just creating the multiprovider on Custom Billing cube and Custom DSO .
    In my billing cube , I have Billing document assigned to line item dimension
    and Line item is also in another in another line item diemsion .
    My DSO have Billing document number , Item number and Partner function as primary key .
    Could you please let me know how should be my MP design ?
    How to create a dimension in Multiprovider ?
    Can I assign the Billing document from cube and Billing document from DSO to the same diemsion ?
    How to figure out the  Partner function Characterstic of DSO which is primary key of DSO but not having this fields in billing cube . ?
    There are 2 other data fields available in DSO which is not there in Billing cube , Do i hv to create a new dimension for them ?
    Please help me soon .
    Regards

    Can I assign the Billing document from cube and Billing document from DSO to the same diemsion ?
    You can create a single dimension for this, in that you can use Billing document and right click assign/identify from the both DSO/Cube.
    How to figure out the Partner function Characterstic of DSO which is primary key of DSO but not having this fields in billing cube . ?
    Create separate dimension for these Partner function Characterisitcs
    There are 2 other data fields available in DSO which is not there in Billing cube , Do i hv to create a new dimension for them ?
    If those data fields related to Billing Document, then you can add these two fields to fisrt dimension (Billing Document Dimension).
    Hope you get some idea.
    Veerendra.

  • Delta Loads are not working: 0FI_GL_10 With enhancement : HR Data in source

    Hello Friends. Thanks for your answer on theory which I know, Please help me with this situation. I read all the sdn response to my message and have below for your suggestion
    QUES1: Why the 0RECORDMODE is not coming in Standard DSO and hence it is not there in Transformation in between Infosource and DSO. What do I need to include 0RECORDMODE in standard DSO. What is the correct OSS to Implement on SP 10 to solve this.
    Ques2. As suggested by you If I run the Delta loads after waiting for 1 hour of Init load. say init load was done at 11 am . i will do the delta at 12:10 am to psa via Infopack and then wait for an hour to run the DTP from PSA to DSO. Delta Records come in but it also bring in the records in DSO that are not changed from about 7 hours in ECC. and make our total Balance incorrect.
    Ques3: We have this Cocatenation of Keys in DSO since we exceeded the total number of 13 key in DSO.
    Cocatenation#1 GL ACCT and CHRT OF ACCTS
    Cocatenation#1 SEGMENT AND CONT AREA
    Cocatenation#1 Version, Value Typem, Valuation view, Currency Type.
    <b>
    Since business want to include HR Data in Keys Like Employee Number, Emp Code, EMPSPIMCODE. Payroll ID and I can not remove these fields from Key in DSO as per the business.</b>
    Also the above fields GL ACCT , CHRT OF ACCTS, SEGMENT, CONT AREA
    exist in Data FIELDS OF DSO. so what are the steps to modify the design to fix this asap.
    Please email me at [email protected] if you have any docs to resolve the above
    Thanks
    Soniya
    null

    Did the full load bring all records from sourcesystem to PSA?
    Was this an issue with the first delta you have tested ?
    Concatentaion of multiple keys into one should not be an issue here as that must have been happening in DSO and delta brings incorrect records to PSA itself.
    Are you validating delta records against FAGLFLEXT inputing the timestamp value  or RSA3 ..how ?
    <b>Check if this note helps</b>
    Note 1002272 - NewGL-DataSource 0FI_GL_10, 3FI_GL_*: Missing record.
    Is delta bringing incorrect records to PSA or DTP brings incorrect records to DSO from PSA ?
    May be you should revisit the logic behind for the enhancement of 0FI_GL_10.
    I am facing a similar issue as well but here delta doesnot even bring a single record ( ODS has 20 keys )...will update if resolves and you do the same.
    Message was edited by:
            Jr Roberto

  • Back order report in BW

    Hi All,
    We have a requirement for back order report in BW . we are using the extractors V_SSL and VASCL to get this information.
    The calculation for backorder and backlog qty are done from V_SSL. But there are few scenarios that we have to manage
    1) hard deletion of deliveries
    2) one schedule line with multiple deliveries
    3) merging data from V_SSL & VASCL ... we tried merging at DSO level but due to difference in keys of DSO the change log update sequence messes the reocrd status
    4) GBSTA appended in VASCL gives wrong value for status
    Could anyone help by explaining staging for such a report if done in their system ?
    Thanks ..would appreciate your help greatly !
    Regards,
    VN

    Hi vidya
    For hard deletion of entries are you planning to drop and reload daily ?
    Since you have multiple delivery at one scheudle line , V_SSL and VASCL cant be combined.
    Put load date ( which will be sydatum ) in both the DSO. Create customer extractor in BI to combine these two data sources and generate delta on load date.
    Thanks,
    Monika

  • Bex Query showing incorrect data

    Hi Experts,
    I have a Bex query on an infoset. The infoset is based on Sales Order Line Item DSO and Sales Order Condition DSO. I am refering Net value from Sales Order Line Item DSO. In the query, the values of Net Value is not coming correctly. When i check the value in Sales Order Line Item DSO it shows 100. However, in the query it shows 500. When i checked the infoset, it had 5 records. In each record, the net value was 100. What should i do to get the correct value of Net Value in the query.
    Have anyone faced similar problem ?
    Please reply as soon as possible.
    Thanks,
    Saachi

    Hi Sachi,
    This is a common problem in infoset.
    Sales order line item - SLI say
    Sales order condition - SC say.
    The value you see in your net value field depends on your join condition in the infoset.
    Currently you have join in such a way that 1 record in SLI correspods to 5 records in SLC (this is as per your join condition), hence you see this error. Youcan manupilate your join condition to get the required result, if this is viable.
    However, in most cases you may not be able to alleviate the fields defining the join.
    Say your sales order and item form the joining fields, then in sales order condition DSO you have 5 records for that sales order and item.
    The way you could probably avoid net value getting multiplied 5 times is by using exception aggregation  with reference char a characteristic in the query.
    The ref char should uniquely identify the 5 sales order item condition lines.
    (basic principle - we have to net value/ no of lines in Sales order condition DSO [5 in this case] .)
    The problem, however is, whenever you consider uniqueness defining fields, you would look at the keys of DSO, because they define uniqueness. One could have multiple infoobject when defining a DSO key.
    So you would'nt be able to define any record with only one particular infoobject(ref char), based on which you could define the  exception aggreation.
    You could define one more data field in the DSO which is a concatenation of all of its keys and then use it in exception aggreg as a reference char in the query.
    One more way is to load data from the two DSO to further cubes to achieve the requirement.
    I think, this is the limitation with the infoset.
    Please let me know if you find any other solution.
    Hope it helps,
    Regards,
    Sunmit.

  • To Join two SAP fields into one info object

    Hi All,
    Can you please suggest the best method to concatenate values from two R/3 fields into one info object master data table?
    The requirement is to create a Sales report where I need to report on sales against  sales type.
    Sales type is a list of joint values of item category ( 0ITEM_CATEG) and bill type (0BILL_TYPE).
    So, I need a list of all item categories and billing types in a single object and report sales value against it.
    Please suggest.
    Thanks,
    Sharmishtha

    Hi Venkat,
    In DSO any case you will not be having more than 16 Keys. I am surprised seeing requirement of more than 16 keys, but anyways you need to go with some workaround.
    You can concatenate multiple Fields and map to one Dummy InfoObject which will be Key in DSO so in actual you have more than 16 Keys but have 16 Keys in system.
    But analyze requirement in detail because this will increase data redundancy and time for load will get increased.
    Also for new issues start new discussion otherwise people will not able to help you in this forum.
    Regards,
    Ganesh

Maybe you are looking for