Splitting the single record into multiple:One-to-Many;S'ingLikeRESULT_TABLE

Hello Friends,
        I am an ABAPer and new to BW. we have a requirement as follows.
BW is getting data from R/3 system. all the purchasing, sales data and billin data.
at the BW end for each Material document we get multiple ITEMS. ( items will be retrieved at BW end)
the question is how to get the multiple entries in the result.
Each material will have one or more items. so we want to write a separate record for each item. Can we do it using RESULT_TABLE?
I have no idea how the data process at BW end.
I have been trying to find the info in SDN but could get what exactly they are saying. bit confused with key figures and so.
Can anyone of you give some  idea on how to get this done please ?
Thanks a lot for your help..
Regards,
reddy
Edited by: SAP User on May 19, 2008 4:27 PM

Ramesh,
   Thank you for the resp.
    Could you please tell me which table actually holds the data that is coming from R3 system?
at the moment I am trying to get the item data from a select statement for a particular master data (which is coming from COMM structure). then i am updatting the return table. but only the last value is getting updated in the final output.
Could you please give me some idea on how to do this? Thanks
Regards,
Sree

Similar Messages

  • Splitting the single record into multiple records based on validity

    Hi Guru's,
    basically i am an BI consultant with less knowledge on ABAP, can i request your help on the ABAP task.
    I am working on HR module which is integrated with SAP BI,  the reports will be executed based on calendar month the requirement is i should split the single record into a multiple records based on validity of the record.  basically the HR data would be in data from and date to. 
    below is the logic
    Check whether the start and end date of the record are in the same month and year.
    If yes  nothing changes
    If no  create multiple records
    1st record  original start date of the record u2018till end of that month
    Following record  1st of the next month  u2018till last day of the month
    u2026
    Last record  1st of the month u2018till original end date.
    All fields will have the same values, only the datefrom and dateto fields change.
    Can any one please provide me the same code to proceed on my task.
    Thanks and Regards,
    Venkat

    Hi,
    Using Rule group we can split it.
    Using Rule Group in SAP-BI  Part - 1
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/business-intelligence/s-u/using%20rule%20group%20in%20sap-bi%20%20part%20-%201.pdf
    Thanks
    Reddy

  • Split a single avi into multiple avi files?

    Hi there, totally new to PS Elements Premier 10.
    I have some VHS video tapes that I converted to AVI format.  I'd like to separate the videos into segments (ie; separate Christmas 1982 from Easter 1983) - and store them in multiple AVI files.  I tried to do this in MS movie maker, but that was taking forever.  I bought Premier Elements because I figured it should be easier; and it probably is, but I'm noob...
    I have split the video into the scenes I want.  I have added markers... but I am having trouble splitting the actual video into chunks of clips - ie; one big avi file would become 10 smaller avi files.  I am trying to watch these on a boxee box, so I do want the to be separate files - I dont want to do a "web dvd" output.
    I have tried this:
    I dont see export functions.
    I go to "SHARE" but it only lets me export to a single output.
    How can I do this?  It's for Christmas presents, so it's a little urgent - any help you can give me would be soooooo appreciated.
    thanks!

    Thanks everyone.  I ended up figuring it out - whether or not I did it the best / easiest / fastest way is up for debate
    I split the video into clips.
    Separated the clips into different timelines.
    "left aligned" all the clips in their respective timelines so they all start at 0:00 (just for simplification)
    Disable all clips / timelines (right click, enable = false)
    Enable the individual clip/timeline that I want to save
    Set up the work area bar so that it starts at 0:00 and ends at the end of the specific clip I enabled.  With the "snap top" functionality turned on, this is pretty easy. 
    Go to "SHARE" and configure my outputs
    Make sure that "Share Work Area Bar Only" is checked on the "Share" tab before committing
    It creates an avi of only the enabled clip, for the timeline I created.
    Important:
    Make sure you set the work area bar properly, or you'll have a 10 minute clip followed by 2 hours of blackness.... did that a few times ha.
    Make sure you click the "Share Work Area Bar Only" on the share tab - or the same will happen. 
    Thanks for the replies everyone - let me know if there is a better way to acheive this in PE10.
    Thanks!

  • Split the incoming records into partitions

    Guru's,
    I have a table with around 17,000 records each day to get processed through informatica. All these records are distinct in every attribute and the status of the records will be in 'PENDING_CLEAR'.
    My requirement is to read these records into 8 partitions (if possible equal partitions) so that i could run in 8 partitions in informatica.
    I have the below options available in informatica
    1. Pass through
    2. Key range and
    3. Database partioning.
    Option 2 and Option 3 are not possible, since the data base is not partitioned and i will not be able to provide the key ranges, since the primary key on the table is an auto-increment number.
    In pass through i will be reading the same 17000 records across all the pipelines and its a challenge to handle it in infomatica.
    Any suggestions of paritioning the records using sql??
    Thanks a lot for your time.

    >
    Yes. But the way informatica has got options to read and process the record it is complicating more. I am trying to sort the issue related to informatica.
    >
    And that reinforces what I said above: you are likely 'misusing' Informatica if you have that sort of problem.
    A middle-tier application like Informatica does not provide a 'one size fits all' solution without making (in some cases serious) performance trade-offs.
    Such tools function best when they act as the 'middle man' among multiple databases. Need to do some basic data manipulation and source data from both Oracle and DB2? A tool can access both DBs with separate connections and help you merge or filter the data. The tool can also assist in performing some basic data transformations.
    Need to sort data and apply complex business rules? That work should be done in the database.
    The primary goal, when working with multiple database sources or targets, is the do AS MUCH work as possible in the DB; that is what the DB is designed for.
    Get the data INTO the DB as quickly and efficiently as possible and then do the work there. Mid-tier tools can be very effective at that. They can source data from multiple systems, do basic data cleansing and filtering to reject/fix/report 'dirty' data and they can consolidate multiple data streams to feed ONE target stream.
    Tools such as informatica use a proprietary language and syntax. DBs like Oracle and DB2 base their syntax on well-established ANSI standards. There is NO comparison.
    Versions of Informatica that I worked with didn't even allow you to access the code very easily. The code for individual businsess rules was locked into the objects it was attached to (some flexibility using maps and maplets). A developer has to 'open' the object in order to get access to the actual code that was being use.
    The PL/SQL code used in DBs is readily accessible and easy to access.
    The first question I would ask about your issue is: can this work (processing each record) be done in the database. If the answer is yes then that is most likely where the work should be being done. The 'tool' should then be used to do as much 'preprocessing' of the data as possible and then get the cleansed data into the database (into staging tables) as quickly as possible.
    If you insist on going the way you are headed you will need to add code to 'chunk' the data.
    See my reply if this thread for a description of how to use the NTILE function to do that
    Re: 10g: parallel pipelined table func - distributing DISTINCT data sets
    And for more discussion of why you should NOT be going this way here is a thread from last year with a question very similar to yours also using Informatica
    Looking for suggestion on splitting the output  based on rowid/any other
    >
    I have below query.I need to split total rows pulled by the query into two halves by maintaining data accuracy.
    Eg if query returns 500 rows,i need a query which return 250 another with 250.
    Reason :
    I have a informatica ETL job which pull data by above query and updates into target.Run time is 2hrs
    In order to reduce the run time,using 2 pass through partitions which will run the query in two partitions and run time will be reduced to exact 1 hour.
    >
    Sound familiar? Read what the responders (including me) had to say.

  • Transformation Routine to convert single record into multiple

    All,
    I need your help with ABAP Syntax.  My requirement is to take a single record and convert it to multiple records into a DSO with a condition to not create a record if a KF value is 0.
    R/3 Data Record:
    Employee | Date | Char1 | KF1 | Char2 | KF2 | Char3 | KF3 | Char4 | KF4
    Conversion Result into DSO:
    Employee | Date | Char1 | KF1
    Employee | Date | Char2 | KF2
    Employee | Date | Char3 | KF3
    Employee | Date | Char4 | KF4 (This record will not be written if no value is in KF4)
    I have read about the result table in update rules, however within BI 7.0 Transformations I am unfamiliar as to where the RESULT_TABLE function applies.  Has this been replaced by the Expert Routine?
    Could any ABAP expert provide sample code as to how I would perform this conversion in a Transformation Routine?
    Thanks,
    David

    Thanks Alex for your response.
    I did find a solution to this as it turns out to be fairly simple, however I executed the routine as an Expert Routine instead of a Start Routine.  I was advised to do the transformation here.
    The basic concept is defined below:
    Loop at source_package assigning -kf2.
              Append result_fields to result_package.
           Endif.
    -- Kf3u2026  and so on
    Endloop.
    Basically the APPEND statement is used to create the additional records.

  • How to make a single recording into multiple songs garageband

    I recorded my band's gig the other night using my Zoom H2 recorder.  I want to take the single 1.5 hour recording (12songs) and make it into a CD with 12 individual tracks.  I would like to use garageband so i can edit out the deadtime between songs but I don't know how to make a CD.

    johndmalone wrote:
    I want to take the single 1.5 hour recording (12songs) and make it into a CD with 12 individual tracks
    http://www.bulletsandbones.com/GB/GBFAQ.html#chaptertocdtracks
    (Let the page FULLY load. The link to your answer is at the top of your screen)

  • Split and reformat single record into multiple records

    Hi ,
    I need to split 1 record in to  2 records with 1 new field(event)
    I have one internal table in this format
    No country stdate          enddate
    1    us        12/01/2006  10/07/2007
    i need to reformat this record like ;
    NO country  event    pldate           acdate 
    1     us          ga      12/01/2006   12/01/2006
    1     us          es      10/07/2007   10/07/2007
    Can any one resolve this issue?

    Check the example.
    report zrich_0001 .
    data: begin of itab occurs 0,
          no type i,
          country(3) type c,
          stdate  type sy-datum,
          enddate type sy-datum,
          end of itab.
    data: begin of itab2 occurs 0,
          no type i,
          country(3) type c,
          event(2) type c,
          stdate  type sy-datum,
          enddate type sy-datum,
          end of itab2.
    itab-no = 1.
    itab-country = 'US'.
    itab-stdate = '20061201'.
    itab-enddate = '20071007'.
    append itab.
    loop at itab.
      clear itab2.
      move-corresponding itab to itab2.
      itab2-event = 'GA'.
      itab2-enddate = itab-stdate.
      append itab2.
      clear itab2.
      move-corresponding itab to itab2.
      itab2-event = 'ES'.
      itab2-stdate = itab-enddate.
      append itab2.
    endloop.
    loop at itab2.
      write:/ itab2-no, itab2-country, itab2-event,
              itab2-stdate, itab2-enddate.
    endloop.
    Regards,
    Rich Heilman

  • Split the incoming data into multiple grouped output records

    I have three fields in the source, Student ID, Student name and Student Marks. I need to map the details in the destination, by grouping the data on the basis of marks obtained. Each time there's a new mark , the corresponding details of names and student
    ID is saved under the a new mark group that is created. how do i come about it when there are n number of new marks?

    for your scenario i used below xml as input,
    <ns0:Students xmlns:ns0="http://BTSTempProj.StudentDetailsIn">
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>10</StudentMarks>
      </Student>
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>20</StudentMarks>
      </Student>
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>10</StudentMarks>
      </Student> 
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>10</StudentMarks>
      </Student>
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>20</StudentMarks>
      </Student>
      <Student>
        <StudentID>StudentID_0</StudentID>
        <StudnetName>StudnetName_0</StudnetName>
        <StudentMarks>30</StudentMarks>
      </Student>   
    </ns0:Students>
    and here is the output, hope this is what you are looking for. 
    <ns0:Students xmlns:ns0="http://BTSTempProj.StudentDetailsOut">
    <StudentMarks>10</StudentMarks>
    <Student>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    </Student>
    <StudentMarks>20</StudentMarks>
    <Student>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    </Student>
    <StudentMarks>30</StudentMarks>
    <Student>
    <StudentName>StudnetName_0</StudentName>
    <StudentID>StudentID_0</StudentID>
    </Student>
    </ns0:Students>
    Please find the below xslt which you can use, it is basically based on the Muenchian grouping suggested by Ashwin
    <?xml version="1.0" encoding="UTF-16"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:var="http://schemas.microsoft.com/BizTalk/2003/var" exclude-result-prefixes="msxsl var s0" version="1.0"
    xmlns:ns0="http://BTSTempProj.StudentDetailsOut" xmlns:s0="http://BTSTempProj.StudentDetailsIn">
      <xsl:output omit-xml-declaration="yes" method="xml" version="1.0" />
      <xsl:template match="/">
        <xsl:apply-templates select="/s0:Students" />
      </xsl:template>
      <xsl:key name="groups" match="Student" use="StudentMarks"/>
      <xsl:template match="/s0:Students">
        <ns0:Students>
          <xsl:for-each select="Student[generate-id(.)=generate-id(key('groups',StudentMarks))]">
            <xsl:sort select="StudentMarks" order="ascending"/>
            <StudentMarks>
              <xsl:value-of select="StudentMarks/text()"/>
            </StudentMarks>    
            <Student>    
              <xsl:for-each select="key('groups',StudentMarks)">
                <StudentName>
                  <xsl:value-of select="StudnetName/text()"/>
                </StudentName>
                <StudentID>
                  <xsl:value-of select="StudentID/text()"/>
                </StudentID> 
                </xsl:for-each>
            </Student>
          </xsl:for-each>        
        </ns0:Students>
      </xsl:template>
    </xsl:stylesheet>
    Regards, Amit More

  • Splitting a single video into multiple sub-videos

    I have CS4 Master Suite on MAC.
    I want to take a single video and split it into consecutive chunks and store each chunk as a separate video file (Eventually to put in a database to allow web uses to select which chunk(s) they want to view.
    I can do this "by hand" in Premiere but I want to eventually do this in a semi-automated way. (Visually decided where to place the splits, but automate the splitting, naming conventions etc.
    Suggestions?
    Is there a scripting language interface that could help me do some of this?
    Thanks

    I did not make clear, that of course I don't one to do this with ONE video, but with hundreds of hours of video in typically 20-30 second chunks. So perhaps there are good alternate suggestions to do what I want to do?
    I want eventually to give the enduser the possibility to run a database query to select one or more of the final chunks/chapters for viewing

  • Displaying single value (Record) into multiple columns

    Hi All,
    I want to display the single record into multiple columns. Please let me know How to achieve this..
    Record:
    Lvl Activity Acre
    6 Week 4 (Same value to be displayed into 3 columns.)
    REquired output:
    lvl Activity PH1 PH2 PH3
    6 Week 4 4 4
    Thanks
    Kavi

    user533671 wrote:
    Hi,
    Thanks for immediate reply.
    PH1, PH2, PH3, ... will go more columns based on parameter , what we are passing.An single SQL statement cannot have a dynamic number of columns based on the data itself. The projection (columns returned) have to be known before any data is fetched... and that includes some 'parameter' value.
    {thread:id=2309172}
    You can build a query dynamically, based on a parameter or even on the data, but 99 times out 100 people use dynamic queries where they are not needed.
    Perhaps explain to us what you are really trying to achieve and why, and we could suggest some better way.

  • Splitting single video into multiple files - workflow improvements?

    I regularly need to split a single video into multiple separate files that are used by other programs.  I'm using Premiere Pro CS4 for a number of reasons including the ability to easily and accurately select a scene by individual frames, native audio and video effects/filters, and the ability to import and export various video types.  I'm open to using other tools, but I haven't yet found one that is even close to Premiere Pro when it comes to accurately selecting split points.
    I'm not a Premiere Pro expert.  I have been doing this for about four months and have read many resources (books, forum posts, help guides) to refine the workflow I'm currently using.  My question:  does anyone know any improvements that might save me time/keystrokes.
    Current workflow:
    I've bound F8 to File > Export > Media
    Import video file
    Open in source monitor
    Set In and Out points for scene in source monitor
    Ctrl-drag from source monitor to Project Panel (creates a subclip)
    Repeat 3 and 4 for all scenes/subclips
    Select all subclips from Project Panel and drag to timeline
    Set work area bar to first subclip in timeline by the following four keystrokes:  Home, Alt-[, PageDown, Alt-]
    Type F8 (File > Export > Media shortcut).  Type output file name, click OK and the first subclip is put in the AME queue
    For the remaining subclips, type: Alt-[, PageDown, Alt-], F8, output file name, OK and repeat until done
    Any thoughts/ideas on workflow improvements?
    Thank you!

    Thank you Hunt.
    For the sake of brevity, I didn't include all of the details about the various aspects of the projects.
    Early on I was doing what you suggested and yes, it is a little quicker.  I learned (painfully) a couple of months later that I sometimes have to go back and adjust the clips and this method (trim to timeline with no subclips) resulted in quite a bit of duplicate effort (to reobtain start/stop points).  I've since learned that managing the "scenes" as subclips in topical bins allows me to go back and make adjustments, long after I've totally forgotten about the project content, without a lot of unnecessary reworking.

  • Syndicator Server: possible to split the export file in multiple file?

    Hello,
    is it possible to split the export files into multiple files e. g. at 5000 records?
    Perhaps there is a possibility in the mdss.ini? Or a setting in the mapping?
    Thank your for your responses!
    Melanie

    Hi Melanie,
    - If you are syndicating in the Xml format you have the option to syndicate one xml for every record. or multiple records one xml.
    For this you have to make a simple setting in the Syndicator-> Map properties->XML file output->(multiple files/single file)
    Other way around is:
    - If you are syndiacting in any other format say text then the output file goes as one file for all records present in the MDM repository, for this you can use the search options.
    - Create a search on some field value which will select a set of records from the lot.
    - Then you can syndicate only those records which satisfies the  search criteria.
    - In this way it is possible to syndicate in parts
    Hope It Helped,
    Kindly Reward Points if found useful
    Thanks & Regards
    Simona Pinto

  • Split one record into multiple records in Update Rules

    Hello All,
    I am trying to split a single record from R/3 into 2 records.
    My data flow is form R/3 > PSA > ODS > Cube
    when loading data into ODS i have to add the original record as it is to ODS. For second record i have to check a condition, & change few keyfigure values to 0 and fill an extra field.
    Example:
    Record in R/3 :
    Month | %1 | %2 | %3 | % 4 | ORGUNIT | JOB| EMPLOYEE| POSITION|
    02.2006 | 0 | 1 | 0 | 0 | 3000000| 248 | 2546352 | 500000 |
    Record in BW Comm_Structure.
    In Transfer rules i m writing an extra field to the R/3 record.
    Month | %1 | %2 | %3 | % 4 | ORGUNIT | JOB| EMPLOYEE| POSITION| NEW_FIELD |
    02.2006 | 0 | 1 | 0 | 0 | 3000000| 248 | 2546352 | 500000 | 2546352 |
    NEW_FIELD transfer routine :
    If employee NE 0
    Result  =  employee
    else.
    Result = 0 .
    Till this point everything works fine.
    Now i want to load this record into an ODS. I want to split the above single record into 2 records.
    Records in ODS should be :
    Month | %1 | %2 | %3 | % 4 | ORGUNIT | JOB| EMPLOYEE| POSITION| NEW_FIELD |
    02.2006 | 0 | 1 | 0 | 0 | 3000000| 248 | 2546352 | 500000 |  0 |
    02.2006 | 0 | 0 | 0 | 0 | 3000000| 248 | 2546352 | 500000 |  2546352 |
    Condition for NEW_FIELD.
    For first record always NEW_FIELD =0.
    For Second Record
    If NEW_FIELD NE 0.
    Cahnge KF's  %1, %2, %3, %4 = 0.
    If EMPLOYEE is 0 then no need to create extra record.
    I tried to use achieve this using return table, but no success.
    Can any one help me with ABAP syntax please. I am bit weak in ABAP Programming.
    Thanks in advance.
    POPS

    Dear:
    You could do so in update routines. Select the 'return table' option.
    useful links:
    https://forums.sdn.sap.com/click.jspa?searchID=10118555&messageID=2906656
    https://forums.sdn.sap.com/click.jspa?searchID=10118555&messageID=913873
    https://forums.sdn.sap.com/click.jspa?searchID=10118555&messageID=2441579
    Thanks

  • Split Single IDOC into Multiple IDOC's Based on Segment Type

    Hi Experts,
    I have a scenario IDOC to FILE ,  Split Single IDOC into Multiple IDOC's based on Segment Type
    Outbound:
    ZIdocName
    Control Record
    Data Record
    Segment 1
    Segment 2
    Segment 3
    Status Record
    I should get output like below
    Inbound:
    ZIdocName
    Control Record
    Data Record
    Segment 1
    Status Record
    ZIdocName
    Control Record
    Data Record
    Segment 2
    Status Record
    ZIdocName
    Control Record
    Data Record
    Segment 3
    Status Record
    Please suggest me step by step process to achieve this task.
    Thanks.

    Thanks a lot Harish for reply.
    I have small doubt. According to your reply , If we have N number of segments in single IDOC with same fields in all segments then for splitting Single IDOC into Multiple IDOC's based on Segment Type we need to duplicate N number of target IDOC tree structure.
    Is that possible to Split single IDOC into Multiple IDOC's based on Segment Type using only one Target IDOC structure without duplicating the Target IDOC structure tree.

  • Splitting of a CSV File with Multiple Records into Multiple XML File

    Dear All,
    <b> I am doing a Scenario of CSV to XML Files. I am using BPM for the same. My incoming CSV File has got multiple records. I want to break this Multiple records into Multiple XML Files having one record each.</b>
    Can someone suggest how can I break this rather Split this into Multiple XML Files.
    Is Multimapping absoltely necesaary for this. Can't we do this without Multimapping. Can we have some workaround in the FCC parameters that we use in the Integration Directory.
    Kindly reply ASAP. Thanks a lot to all in anticipation.
    Pls Help.
    Best Regards
    Chakra and Somnath

    Dear All,
    I am trying to do the Multimapping, and have 0....unbounded also. Someways it is not working.
    <b>
    Smitha please tell me one thing...Assigning the Recordsets per Message to 1, does it mean that it will write multiple XML Files as I want.</b>
    Also I am usinf Set to Read only. So once the File is read it becomes RA from A. Then will it write the other Records.
    I have to use a BPM because there are certain dependencies that are there for the entire Process Flow. I cannot do without a BPM.
    Awaiting a reply. Thanks a lot in anticipation.
    Best Regards
    Chakra and Somnath

Maybe you are looking for

  • Connect imac to pc server

    I have a IMac running OS X 10.8.2 connecting wireless to a network where I have a PC server.  I can RDP into the server just fine, then use the windows dialog box to log in.  Is it possible to just connect the server data files to my Mac.  Something

  • INSERT INTO TABLE (SELECT -----)

    I laready posted But i think people got confused this is the same query in easiest way Hi Please please here Insdie the curusr FOR Loop i am using INSERT INTO by SELECT (see the below code EACH INSERT WILL FETCH 800-1000 records Minimum !!!) In that

  • Retouch button wont work

    i click on the retouch button but when i move it over the writing i want to erase, nothing happens

  • Screen Exit MIRO

    Hi     I have used as BADI MRM_ITEM_CUSTFIELDS to design custom tab. I have written code in METHOD....ENDMETHOD which is triggering. I am getting value in screen field variable through debugging. But not appearing in screen field.    But if i pass ha

  • Adding computer to Mac Mini server network?

    Hello, Can anyone tell me how to add a Mac Air to the computers my Mac Mini server recognizes? Currently, I cannot share files between computers. I have "All Users" checked under sys prefs >sharing. Thanks for any help!