Extract data from BW ODS to external application

Hello,
We have the following interface challenge:
We need to interface data from an ODS to an external application. The request for this data comes from the external application and contains selection parameters.
The datasets are small and the responses need to be fast.
How to do this?
We do not want to use Query_data_view, it is not performing and contains too much meta data
Preferably we define a webservice either in BW or XI/PI that receives the request and send back the answer.
What are the possibilities/best practices?
Brokered or non-Brokered?(using XI or PI or just using an BW webservice)
Do we need to publish the webservice to an UDDI?
How do we extract the data from the ODS, via a Function module? If so i guess that FM can be made externally available and callable from XI/PI.
Does ehp1 provide more fucntionalities in this area than 7.00?
Does PI provide more functionalities than XI in this area?
Do we need proxies for this?
Thanks for any insights

Tom,
How to do this?
External application (SOAP request) <-> PI <-> SAP BW (ABAP Proxy response). Make both - web service and proxy - sync.
Preferably we define a webservice either in BW or XI/PI that receives the request and send back the answer.
What are the possibilities/best practices?
Web service will be defined in external application, proxy will be created in BW. Search on SDN for the detailed steps.
Brokered or non-Brokered?(using XI or PI or just using an BW webservice)
If you have PI as the integration hub, then prefer using PI.
Do we need to publish the webservice to an UDDI?
Not required.
How do we extract the data from the ODS, via a Function module? If so i guess that FM can be made externally available and callable from XI/PI.
Call the function module / any other extraction program from the proxy. No need to make FM externally available.
Does ehp1 provide more fucntionalities in this area than 7.00?
Does PI provide more functionalities than XI in this area?
Do we need proxies for this?
PI 7.1 EhP1 SP 6 is the latest, so it will definitely provide more functionality over older versions.
Yes, use proxy at BW side.
Hope this answers all your questions.
Regards,
Neetesh

Similar Messages

  • Need to extract data - from USB 2.0 external disk

    Ive tried Data Rescue II to no avail. I cant afford to buy another tool to use such as FileSalvage.
    I was hoping somebody else in the Mac community knows of a freeware/shareware or otherwise inexpensive tool that can extract data....
    Cheers and TIA

    just for anyone following this thread, who may be experiencing a similiar issue here are more facts.
    This is a USB 2.0 type external USB drive in a small plastic enclosure. Its got a 3 year warranty from manufacturer Simpletech.
    It worked fine for 6 months. It appears to have failed - it was never accidentally erased. Ive used it weekly to backup my MacBook Pro.
    Suddenly, this Simpletech 250Gb drive stopped being accessible. You would see the the (two) partitions mount, and correct volume names. One partition was made big enough to handle backing up a MBP- im my case a 100Gb partition. The latter partition was what was left over, or nominally, 150Gb. Upon connecting the USB 2.0 cable, you would see the volumes mount, with correct volume names and contents, but upon clicking (say a folder of text documents), the item would simply disappear from view. Further clicking on other items - say folder full of my pet pics, folder of music, folder full of pics of stuff I have for sale) those would disappear too.
    Repair tools such as Disk Utility did and still do see the volumes and contents. But nothing more can be done to view or access any data within them.
    Side note: DU has the "vulnerability" of not forcefully unmounting volumes - and will state when it cant do so. Unmount is a command and a process used by OSX to modify disk contents. The drive or partition icon would and should disappear from your desktop (momentarily), then DU can do its thing, hopefully to repair whatever is wrong. Same idea for erasing, unmount would still be needed. But if the partitions dont unmount via DU, you might be tempted to give up. Fortunately, you can go to Terminal and issue a command such as:
    sudo umount -f /dev/get name of your disk from DU - get info (such as disk2/s5)
    while this Terminal way of issuing unmount may work (and did for awhile for my faulty disk) no utility was able to repair my drive in any way shape or form. No erase command, no format, nothing nada.
    So Im stuck with wanting to RMA this defective drive back to the manufacturer but have no way to erase the data.
    Tried putting close to gigantic speaker - that didnt work at all.
    Any suggestions ?
    Simpletech has said they will replace it if I send it back. My data is seemingly trapped on this drive !
    I tried:
    Tech Tool Pro
    Drive Genius
    Diskwarrior
    Data Rescue II
    to no avail.

  • Error while extracting data from ODS using Infospokes - URGENT

    Hi all,
    I am extracting data from an ODS using infospokes and nothing fancy, no selection criteria but I am getting an error message saying
    Syntax error in row3(-> long text) Msg id = "RG" and msgno is 102
    Any ideas on how I can see what is the exact error and how to debug this?
    thanks
    Sabrina.

    Hi Sabrina
    service.sap.com can help you getting the details of your mesg.
    I found one OSS note suitable to your mesg. So just check out OSS note # 671097. I hope this note will be some help to you. If not go and chk in the OSS you can find some more.
    Here is the note details also
    <i>Symptom
    Error message RG102: 'Syntax error in &1, row &2 (-> long text)' appears in the request log of an InfoSpoke.
    Reason and Prerequisites
    The data source is an ODS object and the extraction mode is 'delta'. The cause of the error message is that the ODS extractor is unable to select the request ID (InfoObject 0REQUID) from the change log of the ODS object. However, the request ID is mistakenly provided in the field list of the ODS object on the InfoSpoke maintenance screen. --
    Solution
    Delete the 0REQUID InfoObject from the field list of the InfoSpoke and activate the InfoSpoke. As of the patch mentioned below, the request ID in the template tab is no longer provided.
    BW 3.0B
               Import Support Package 16 for 3.0B (BW3.0B Patch 17 or SAPKW30B16) into your BW system. The Support Package will be available once note 571699 with the short text "SAPBWNews BW 3.0B Support Package 16", which describes this Support Package in more detail, has been released for customers.
    BW 3.1 Content
               Import Support Package 10 for 3.1 Content (BW3.10 Patch 11 or SAPKW31010) into your BW system. The Support Package will be available once note 571747 with the short text "SAPBWNews BW 3.1 Content Support Package 10" has been released for customers.
    To provide information in advance, the notes mentioned above may already be available before the Support Package is released. In this case, however, the short text still contains the words "preliminary version".
    Refer to note 110934, which contains information about BW Support Packages.</i>
    Regards,
    Rohini

  • Extracting data from sap to java application using JCO

    Hi,
    I am new to sap and wanted to know what is the procedure to extract data from  based on the java application client (user defined input from different tables of sap) input and need to manage huge data meaning reading millions of records.kindly help me how to handle this in ABAP.

    Hi,
    Pls chk these links
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/ad09cd07-0a01-0010-93a9-933e247d3ba4
    Accessing SAP Tables from a Java application
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/47b6cd90-0201-0010-5aba-b6b7474d4aff
    Java Application ,SAP BW
    <b>***Reward Points if Useful</b>
    Regards
    Gokul

  • Performance issue while extracting data from non-APPS schema tables.

    Hi,
    I have developed an ODBC application to extract data from Oracle E-Business Suite 12 tables.
    e.g. I am trying to extract data from HZ_IMP_PARTIES_INT table of Receivables application(Table is in "AR" database schema) using this ODBC application.
    The performance of extraction (i.e. number of rows extracted per second) is very low if the table belongs to non-APPS schema. (e.g. HZ_IMP_PARTIES_INT belongs to "AR" database schema)
    Now if I create same table (HZ_IMP_PARTIES_INT) with same data in "APPS" schema, the performance of extraction improves a lot. (i.e. the number of rows extracted per second increases a lot) with the same ODBC application.
    The "APPS" user is used to connect to the database in both scenarios.
    Also note that my ODBC application creates multiple threads and each thread creates its own connection to the database. Each thread extract different data using SQL filter condition.
    So, my question is:
    Is APPS schema optimized for any data extraction?
    I will really appreciate any pointer on this.
    Thanks,
    Rohit.

    Hi,
    Is APPS schema optimized for any data extraction? I would say NO as data extraction performance should be the same for all schemas. Do you run "Gather Schema Statistics" concurrent program for ALL schemas on regular basis?
    Regards,
    Hussein

  • How to extract data from ODS to non-SAP system

    Hi,
    Can anybody tell me, step by step, how to extract data from ODS to a non-SAP system?
    Is it possible to do it without programming effort? And is there volume limits for this kind of extraction?
    The non-SAP system is an unix system.
    Thanks in advance
    Ella

    Ella,
    You can look at it from the concept of a BADI / Infospoke
    Extract the data from the ODS to a Flat file / RDBMS using an infospoke. I am not sure as to how the infospoke loads data into the RDBMS ( did it very long ago ) but then you can push it into an RDBMS and I am sure it will be system neutral.
    Hope this helps...
    Arun
    Assign points if it helps

  • Extract data from SAP and send to external system via Webmethods & IDOC's

    Hi,
    We need to Extract data from SAP and send to an external system via Webmethods middlewear using IDOCs. I have never used webmethods before and would like to know more about how to implement this scenario. I have used IDOCS in an EDI scenario before but not used it along with WebMethods.
    Any pointers would be of great help. Thanks

    If you have already ABAP programs /BAPI's in place then try to develop RFC interface and write some back ground programs to scheudl BAPI's and develop scenario but you need to implement error handling , data validation in PI mapping level.
    or
    take help from ABAPer to design in ABAP like writing Proxy program to pull data and send it PI.
    if you are dealing with master data bit risky(correctness) but can be achived using PI.

  • How to extract data from Internet explorer & active MS office applications?

    Hi all,
    Need advice on "How to extract data from Internet explorer & active MS office applications"?
    Thanks in advance
    regards
    DIlip

    If ths search list isn't what you want, just search again:
    http://www.google.com/search?q=get+excel+data+in+java

  • How to extract data from Hyperion essbase and load into essbase application

    Hi Guru,
    I want to extract data from hyperion essbase 1 application and then load to another application of hyperion essbase.
    Can any one know,how to do this.
    Please,suggest LKM and IKM that should be used for this.

    Thank you very much John,
    I am using Report script method not your least like method(Calc script as you mentioned in your blog)...:)
    I don't know how to check logs of essbase.
    what is load rule and how to use that?
    My ODI version is:10.1.3.6.2
    One more think i want to ask you is i don't have hyperion planning as Technology in topology maneger in my ODI.
    Though, in my oracledi\lib\scripts\xml directory, i have TECH_HyperionPlanning.xml
    So,how to import technology to have this OR I need something else for this....
    Edited by: Maulik Vadodariya on 16 Mar, 2011 3:51 PM
    Edited by: Maulik Vadodariya on 16 Mar, 2011 4:11 PM
    Edited by: Maulik Vadodariya on 16 Mar, 2011 4:14 PM
    Edited by: Maulik Vadodariya on 16 Mar, 2011 4:14 PM
    Edited by: Maulik Vadodariya on 16 Mar, 2011 4:15 PM

  • Extracting data from iDoc tables

    Hi,
    I need to extract data from idoc segments from the database tables EDIDC and EDID4 for which the idoc status is 51 and to save all this data in an external file.
    For example, I need to check all the iDocs with WPUBON01 base type and if the status is 51 then I have to query the ARTNR field from E1WPB02 segment and to save idoc number and ARTNR in an excel file.
    Can anybody help me or give me some example?
    Thank you in advance.
    Ioan

    See Below Example code :
    TYPE-POOLS: slis.
    tables : edid4 , edidc ,edids ,lfa1,teds2.
    DATA: t_fieldcatalog TYPE slis_t_fieldcat_alv.
    DATA: s_fieldcatalog TYPE slis_fieldcat_alv.
    DATA: s_layout TYPE slis_layout_alv.
    DATA: text11 LIKE E1EDP02.
    DATA: text111 LIKE E1MBXYI.
    DATA: s_keyinfo TYPE slis_keyinfo_alv.
    DATA: v_repid TYPE syrepid.
    DATA: V_MSGNO LIKE T100-MSGNR.
    *DATA: V_TEXT(90).
    DATA : WA_EDIDS TYPE EDIDS.
    data : begin of itab_edids occurs 0,
       user like edids-UNAME,
       date like edids-CREDAT,
       time like edids-cretim,
       idoc like edids-docnum,
      MESSAGETYPE like edidc-MESTYP,
      VENDOR LIKE EDIDC-SNDPRN,
      name like lfa1-name1,
      icon(1),
       EXPAND TYPE C,
    end of itab_edids.
    data : itab type edid4.
    data : begin of itab_edidc occurs 0,
         doc_num like edidc-docnum,
         MESSAGETYPE like edidc-MESTYP,
       IDOCTYPE like edidc-DOCTYP,
       PARTNERNUMBER like edidc-RCVPRN,
       PARTNERTYPE like edidc-RCVPRT,
      MESSAGECODE like edidc-MESCOD,
      VENDOR LIKE EDIDC-SNDPRN,
      data like edidc-credat,
    *include structure edidc.
      end of itab_edidc.
    data : begin of itab_status occurs 0,
    idoc like edids-docnum,
    date_stauus like edids-logdat,
    status_counter like edids-countr,
    staTus like edids-status,
    *descrp like teds2-descrp,
    DESCRP(70),
    ponumber like  ekpo-ebeln,
    MESS LIKE edidc-MESTYP,
    *appdoc like edids-stapa1,
    end of itab_status.
    data : text like edid4-sdata.
    DATA: text1 LIKE E1EDK01.
    data : begin of itab_teds1 occurs 0.
            include structure teds1.
    data end of itab_teds1.
    *selection-screen begin of block sb with frame title text-001.
    *select-options:
       s_rsdat for edidc-CREDAT.
    *selection-screen end of block sb.
    DATA: f_fieldcatalog TYPE slis_fieldcat_alv.
    selection-screen begin of block sb with frame title text-001.
    parameters:
           p_su radiobutton group gp1,
           p_re radiobutton group gp1,
           p_al radiobutton group gp1.
    select-options:
        s_rsdat for edids-creDAT,
        s_user for edids-uname.
    selection-screen end of block sb.
    initialization.
    PERFORM INITIALIZATION.
    start-of-selection.
    PERFORM DATA_RETRIVAL.
    PERFORM DATA_BASED_SELECTION.
    PERFORM PASSING_ALV.
    *select docnum mestyp doctyp rcvprn rcvprt mescod credat into
    *table itab_edidc from edidc
    *where credat in s_rsdat.
    *CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    *EXPORTING
    *i_program_name = v_repid
    *I_INTERNAL_TABNAME = 'ITAB_STATUS'
    *CHANGING
    *ct_fieldcat = t_fieldcatalog.
    *CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    *EXPORTING
    *i_program_name = v_repid
    *I_INTERNAL_TABNAME = 'ITAB_EDIDS'
    *CHANGING
    *ct_fieldcat = t_fieldcatalog.
    s_LAYOUT-ZEBRA = 'X'.
    *s_LAYOUT-SUBTOTALS_TEXT = 'SUBTOTAL'.
    *s_LAYOUT-TOTALS_TEXT = 'TOTAL'.
    *&      Form  INITIALIZATION
          text
    -->  p1        text
    <--  p2        text
    FORM INITIALIZATION.
    V_REPID = SY-REPID.
      s_keyinfo-header01 = 'IDOC'.
      s_keyinfo-item01 = 'IDOC'.
    *s_layout-subtotals_text = 'SUBTOTAL TEXT'.
    *s_layout-key_hotspot = 'X'.
    *s_layout-expand_fieldname = 'EXPAND'.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                i_program_name         = V_REPID
                I_INTERNAL_TABNAME     = 'ITAB_STATUS'
                I_INCLNAME = V_repid
           CHANGING
                ct_fieldcat            = T_fieldcatalog
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                i_program_name         = V_REPID
                I_INTERNAL_TABNAME     = 'ITAB_EDIDS'
                I_INCLNAME = V_repid
           CHANGING
                ct_fieldcat            = T_fieldcatalog
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
    f_fieldcatalog-just = 'L'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING just
    WHERE  ( fieldname = 'IDOC' OR FIELDNAME = 'STATUS_COUNTER' ).
    f_fieldcatalog-SELTEXT_L = 'Status Message'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING SELTEXT_L
    WHERE  fieldname = 'DESCRP'.
    f_fieldcatalog-TECH = 'X'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING TECH
    WHERE  fieldname = 'EXPAND'.
    f_fieldcatalog-REPTEXT_DDIC = 'Vendor Name'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING REPTEXT_DDIC
    WHERE  fieldname = 'NAME'.
    *f_fieldcatalog-REPTEXT_DDIC = 'V Code 32122'.
    *MODIFY t_fieldcatalog FROM f_fieldcatalog
    *TRANSPORTING REPTEXT_DDIC
    *WHERE  fieldname = 'VENDOR'.
    ENDFORM.                    " INITIALIZATION
    *&      Form  DATA_RETRIVAL
          text
    -->  p1        text
    <--  p2        text
    FORM DATA_RETRIVAL.
    select  uname credat cretim docnum into  table
    itab_edids from edids
                   where credat in s_rsdat and
                          uname in s_user and
                          countr = ' '.
    select  uname credat cretim docnum from edids
    *APPENDING CORRESPONDING FIELDS OF TABLE itab_edids
                  where logdat in s_rsdat and
                         uname in s_user.
                         SELECT budat hkont belnr shkzg wrbtr FROM bsas
    *APPENDING CORRESPONDING FIELDS OF TABLE it_temp WHERE hkont = w_glacct
    *"wa_cb-gl_account
    *AND bukrs IN (so_bukrs-low)
    *AND budat < so_date-low.
      delete  adjacent duplicates from itab_edids.
      if not itab_edids[]  is initial.
         select docnum mestyp doctyp rcvprn rcvprt mescod SNDPRN credat into
        table itab_edidc from edidc for all entries in itab_edids
        where docnum = itab_edids-idoc.
      endif.
    LOOP AT ITAB_edids.
       READ TABLE ITAB_EDIDC WITH KEY  DOC_NUM = ITAB_EDIDS-IDOC.
       itab_edids-messagetype = ITAB_EDIDC-MESSAGETYPE.
       itab_edids-VENDOR = ITAB_EDIDC-VENDOR.
       MODIFY ITAB_EDIDS.
       CLEAR ITAB_EDIDS.
       ENDLOOP.
    DELETE ITAB_EDIDC WHERE MESSAGETYPE = 'ORDERS'.
    loop at itab_edids.
    read table itab_edidc with key doc_num  = itab_edids-idoc.
    if sy-subrc ne 0.
    delete itab_edids.
    endif.
    endloop.
    select docnum logdat countr status into table itab_status from edids for
       all entries in itab_edidc where docnum = itab_edidc-doc_num.
       LOOP AT ITAB_STATUS.
       READ TABLE ITAB_EDIDC WITH KEY  DOC_NUM = ITAB_STATUS-IDOC.
       ITAB_STATUS-MESS = ITAB_EDIDC-MESSAGETYPE.
       MODIFY ITAB_STATUS.
       CLEAR ITAB_STATUS.
       ENDLOOP.
      loop at itab_status.
        clear : text ,text1 , text11, text111, itab.
       select single descrp from teds2 into itab_status-descrp
                              where status = itab_status-STATUS AND
                                   LANGUA = 'E'.
       select single sdata into text from edid4 where
         DOCNUM =  itab_status-idoc and
         segnam = 'E1EDK01'.
    *MOVE: text        TO text1,
         text1-BELNR TO itab_status-ponumber.
          itab_status-ponumber = text1-belnr.
       move text+83(30) to itab_status-ponumber.
       MODIFY ITAB_STATUS.
       clear itab_status.
    IF itab_status-MESS = 'WMMBXY'.
       select single * from edid4  INTO ITAB where segnam = 'E1MBXYI' AND
                     HLEVEL = '02' AND DOCNUM = itab_status-idoc.
    MOVE  : ITAB-SDATA  TO TEXT111 ,
    text111-EBELN TO itab_status-ponumber.
    **text1-BELNR TO ponumber.
    ELSE.
    select single * from edid4  INTO ITAB where segnam = 'E1EDP02' AND
                     HLEVEL = '03' AND DOCNUM = itab_status-idoc.
    MOVE  : ITAB-SDATA  TO TEXT11 ,
    *text1-EBELN TO ponumber.
    text11-BELNR TO itab_status-ponumber.
    endif.
        MODIFY ITAB_STATUS.
        clear itab_status.
      endloop.
    ENDFORM.                    " DATA_RETRIVAL
    *&      Form  PASSING_ALV
          text
    -->  p1        text
    <--  p2        text
    FORM PASSING_ALV.
    s_LAYOUT-EXPAND_FIELDNAME = 'EXPAND'.
    DATA: t_events TYPE slis_t_event.
    DATA: s_events LIKE LINE OF t_events.
    s_events-form = 'TOP_OF_PAGE'.
    s_events-name = 'TOP_OF_PAGE'.
    APPEND s_events TO t_events.
    s_layout-lights_fieldname = 'ICON'.
    sort itab_status by status_counter descending. " -
    mod3
      CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
           EXPORTING
                i_callback_program = v_repid
                is_layout          = s_layout
                it_fieldcat        = t_fieldcatalog
                i_callback_user_command = 'USER_COMMAND'
                i_tabname_header   = 'ITAB_EDIDS'
                i_tabname_item     = 'ITAB_STATUS'
                IT_EVENTS          = t_events
                is_keyinfo         = s_keyinfo
           TABLES
                t_outtab_header    = itab_EDIDS
                t_outtab_item      = itab_STATUS
           EXCEPTIONS
                program_error      = 1
                OTHERS             = 2.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " PASSING_ALV
    *&      Form  DATA_BASED_SELECTION
          text
    -->  p1        text
    <--  p2        text
    FORM DATA_BASED_SELECTION.
    if p_su eq 'X'.
    *loop at itab_status where status = '53'.
    *select single stapa1 from edids into itab_status-appdoc
    where  docnum = itab_status-idoc and status = '53'.
    *delete itab_status where status ne '53'.
    *modify itab_status.
    *endloop.
    delete itab_status where status ne '53'.
    loop at itab_edids.
    read table itab_status with key idoc = itab_edids-idoc binary search.
    if sy-subrc ne 0.
    delete itab_edids.
    ELSE.
    *SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    endif.
    endloop.
    LOOP AT ITAB_STATUS WHERE MESS NE 'WMMBXY'.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = wa_edids-stapa1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    ENDIF."---- mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    *SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    *SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    LOOP AT ITAB_STATUS WHERE MESS EQ 'WMMBXY'.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    ITAB_STATUS-DESCRP = 'APPLICATION DOCUMENT POSTED'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    delete adjacent duplicates from  itab_edids comparing idoc.
    elseif p_re eq 'X'.
    loop at itab_status where status = '53'.
    delete itab_edids where idoc = itab_status-idoc.
    endloop.
    loop at itab_status.
    read table itab_edids with key idoc = itab_status-idoc binary search.
    if sy-subrc ne 0.
    delete itab_status.
    endif.
    endloop.
    LOOP AT ITAB_STATUS.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = WA_EDIDS-STAPA1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    endif. "-----mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    LOOP AT ITAB_EDIDS.
    SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    ENDLOOP.
    delete adjacent duplicates from  itab_edids comparing idoc.
    elseif p_al eq 'X'.
    delete adjacent duplicates from  itab_edids comparing idoc.
    LOOP AT ITAB_STATUS." WHERE MESS NE 'WMMBXY'.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = WA_EDIDS-STAPA1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    endif. "----mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    *SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    *SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    endif.
    LOOP AT ITAB_EDIDS.
      if p_su EQ 'X'.
      itab_edids-icon = '3'.
      elseif p_re eq 'X'.
       itab_edids-icon = '1'.
       ELSE.
       read table itab_sTATUS with  key idoc = itab_EDIDS-idoc
                                   STATUS  = '53' ."binary search.
       IF SY-SUBRC EQ 0.
        itab_edids-icon = '3'.
       ELSE.
       itab_edids-icon = '1'.
       ENDIF.
       ENDIF.
    select single name1 from lfa1 into itab_edids-name where
                lifnr = itab_edids-vendor.
    SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    clear itab_edids.
    ENDLOOP.
    loop at itab_status.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    if itab_status-descrp is initial.
    select single descrp from teds2 into itab_status-descrp
                               where status = itab_status-STATUS AND
                                    LANGUA = 'E'.
    endif.
    MODIFY ITAB_STATUS.
    clear itab_status.
    endloop.
    sort itab_status by idoc.
    sort itab_edids by idoc.
    ENDFORM.                    " DATA_BASED_SELECTION
    *& Form TOP_OF_PAGE
    text
    FORM TOP_OF_PAGE.
    SKIP.
    ULINE.
    IF P_SU EQ 'X'.
    WRITE : / 'TITLE : SUCCESSFULLY POSTED IDOC', 50 'DATE :', SY-DATUM..
    ELSEIF P_RE EQ 'X'.
    WRITE : / 'TITLE : REJECTED IDOCS'  ,50 'DATE :', SY-DATUM.
    ELSEIF P_AL EQ 'X'.
    WRITE : / 'TITLE : ALL IDOCS' ,50 'DATE :', SY-DATUM.
    ENDIF.
    WRITE  :/9 'Successful-Green light  Unsuccessful-Red Light'.
    format color COL_TOTAL intensified on.
    WRITE : / 'NOTE  : DOUBLE CLICK TO SEE CORREPONDING IDOC AND PO'.
    WRITE :/9 'DOUBLE CLICK IDOC NO ON HEADER LIST'.
    WRITE :  'AND PO NUMBER ON DETAIL LIST'.
    format color off.
    ULINE.
    SKIP.
    ENDFORM. "TOP_OF_PAGE
    FORM user_command *
    --> UCOMM *
    --> SELFIELD *
    FORM user_command USING ucomm LIKE sy-ucomm
    selfield TYPE slis_selfield.
    DATA: WA_IDOC9 LIKE EDIDC-DOCNUM.
    DATA: SELTAB     TYPE TABLE OF RSPARAMS,
          SELTAB_WA  LIKE LINE OF SELTAB.
    RANGES : R_DATE FOR EDIDC-CREDAT." SY-DATUM.
    IF ucomm = '&IC1'.
    if SELFIELD-SEL_TAB_FIELD = 'ITAB_EDIDS-IDOC'.
    READ TABLE itab_edids INDEX selfield-tabindex.
    IF sy-subrc = 0.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    INPUT = ITAB_edids-IDOC
    IMPORTING
    OUTPUT = WA_IDOC9.
    *r_date-low = itab_edids-date.
    *r_date-high = itab_edids-date.
    *r_date-SIGN = 'I'.
    *r_date-OPTION = 'BT'.
    *append r_date.
    SUBMIT RSEIDOC2  WITH DOCNUM = wa_idoc9
    WITH CREDAT in R_DATE[]  AND RETURN.
    ENDIF.
    ELSEIF SELFIELD-SEL_TAB_FIELD = 'ITAB_STATUS-PONUMBER'.
    READ TABLE itab_STATUS INDEX selfield-tabindex.
    IF sy-subrc = 0.
    SET PARAMETER ID 'BES' FIELD itab_sTATUS-PONUMBER.
    CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDFORM..

  • How do i repair or recover data from a corrupt USB external hard drive that does not show up on my Mac desktop or disk utility

    How do i repair or recover data from a corrupt USB external hard drive that does not show up on my Mac desktop or disk utility?
    Last night i was using my external hard drive, for some reason the folder just closed and i couldn't find it on my desktop.
    After googling solutions, i found it in the disk utilities, i clicked on the 'repair' button many times, but it said the 'error...' message.
    So i ejected it to try again, now when i connect the USB external hard drive it doesn't show up on my desktop or disk utilities.
    I really just want to either repair or recover the data on it because it literally has everything (documents, work files, photos etc) on it,
    I downloaded an application to recover my files but it needs the USB to at least show up.recognise it which mine doesn't.
    I know i should've backed it up on another USB, this definitely teaches me for next time to back up all my files.
    Are the files lost forever or can i recover them by going to a shop or using a software?

    Thank you for responding.
    This might sound stupid since i'm not really knowledgeable with Macs,
    but since all my files were moved from my mac computer to the external hard drive,
    is it possible to recover those files through my Mac - like recovering deleted files? 

  • Extracting data from Z-table from SAP R/3 to BW

    Hi all
    I want to extract data from a Z-table from SAP R/3 system to Bw system. Currently I am on BW 3.5. Since it is a Z table I dont have a standard extractor for it & I dont knw how to create it. Can anyone provide me with the step-by-step documentation of how to extract data from a non standard SAP table????

    Hi
    You need to create Generic Datasource on the Z-Table you want to get data from
    Go to RSO2 transaction to create generic datasource .
    You need to give technical name of datasource under datasource type you want and click on create. Then you can give descrption and Application component under which u want see the datasource,
    enter the z table name under view/ table and save.
    here you can click on check boxes to make fields hidden or selection fields.
    Regards
    Ravi
    Edited by: Ravi Naalla on Aug 25, 2009 8:24 AM

  • How to Extract data from a Request management tool to Apex to avoid working on Excel reports

    Client uses a ticketing tool,I donot know what is the database for the tool,but I would like to know the best way to extract data from the tool to pex so that we can eliminate working on Excel reports.These excel reports are basically the open request log,resolved tickets,aging tickets etc,currently we work on many excel reports,can we achieve this in Apex ,if so how do we achieve this.Then we would like to use this report and prepare multiple charts,how the above two requirements can be mapped.

    A very important function for the system will be - one sends an email in certain format to a dummy email address, then some data will be extracted from the email based on the pre-defined format and inserted into the database my APEX application is using.
    Any idea on how I can make it happen please? I agree that this is not really an Apex question, but a more general PL/SQL question.
    There are many approaches, all boiling down to one of these two:
    1) Push: Some process in the mail server sends/forwards information to your database when new mail arrives.
    The language/tools used to do this, and the way it would connect to your database, depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    2) Pull: Some process in the database contacts the mail server and polls for new information.
    Ie. some PL/SQL code would communicate with the mail server. Again, it depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    For example, if you are using Exchange 2007 or newer, it has a web services API:
    http://msdn.microsoft.com/en-us/library/dd877045.aspx
    The challenge here will be to build the correct SOAP requests from PL/SQL, and to handle the security protocols used.
    - Morten
    http://ora-00001.blogspot.com

  • How to extract data from custom made Idoc that is not sent

    Hi experts,
    Could you please advise if there is a way how to extract data from custom made idoc (it collects a lot of data from different SAP tables)? Please note that this idoc is not sent as target system is not fully maintained.
    As by now, we would like to verify - what data is extracted now.
    Any help, would be appreciated!

    Hi,
    The fields that are given for each segment have their length given in EDSAPPL table. How you have to map is explained in below example.
    Suppose for segment1, EDSAPPL has 3 fields so below are entries
    SEGMENT          FIELDNAME           LENGTH
    SEGMENT1         FIELD1                   4
    SEGMENT1         FIELD2                   2
    SEGMENT1         FIELD3                   2
    Data in EDID4 would be as follows
    IDOC           SEGMENT                          APPLICATION DATA
    12345         SEGMENT1                        XYZ R Y
    When you are extracting data from these tables into your internal table, mapping has to be as follows:
    FIELD1 = APPLICATIONDATA+0(4)        to read first 4 characters of this field, because the first 4 characters in this field would belong to FIELD1
    Similarly,
    FIELD2 = APPLICATIONDATA+4(2).
    FIELD3 = APPLICATIONDATA+6(2).  
    FIELD1 would have XYZ, FIELD2 = R, FIELD3 = Y
    This would remain true in all cases. So all you need to do is identify which fields you want to extract, and simply code as above to extract the data from this table.
    Hope this was helpful in explaining how to derive the data.

  • How to Extract  data from a transaction..

    Hi All
    There are some transactions and report programs which are used daily to produce some results and the requirement is to extract that data into BW
    so how can we extract information from a transactions and programs
    Any help will be really appreciated and ofcourse rewarded ...
    Regards
    Lisa

    You can use the following methods
    Method 1:
    1> Create another ABAP program with logic to calculate all the fields, but instead of writing the result data to screenm, it should store it in a internal table and pass it to the extract structure.
    2>Create a InfoSet query based on your ABAP program and use that InfoSet
    3> Create a DataSource based on this InfoSet query and extract data from the DS to you ODS/Cube
    In this method there is no Intermediate storage used.
    Method 2:
    1> Modify the report/transaction program to store the required data into a Transparent Table (u can create one from SE11) in addition to displaying on the screen.
    2> Create a View on this transparent table (from SE11)
    3> Create a DataSource on that view and extract data from that into your ODS/Cube.
    Here, the required data is stored in the Table in addition to the DataTarget.
    But, to implement either of these solution, you will need a decent ABAP knowledge. Else, it will give you a tough time!
    Good luck!
    Regards,
    Sree

Maybe you are looking for

  • Camera doesn't show up in iPhoto after upgrade to 10.6 Snow Leopard

    When I was running 10.5 Leopard, I would connect my camera to my computer and iPhoto would pop up and ask me to import. The camera would be listed in under Devices. After upgrading my OS to 10.6 Snow Leopard, iPhoto no longer recognizes my camera. I

  • How do I delete an icloud account from a used iphone3gs?

    I bought a used apple iphone3gs. When I try to download an app, it asks for the other persons password. I made an account for myself, but it doesn't seem to recognise that when I'm trying to get new apps. Can I delete that persons account without hav

  • Can I connect to my Macbook Pro using my iPhone 5?

    I know there are applications, What are some good free ones or inexspencive ones? If I go somewhere and my mac is at home on sleep mode, can I connect to it, and can I connect to it while its shut down? Can I connect to My Macbook Pro without downloa

  • HT1338 I am trying to get IPhoto.

    I bought a 2011 MBP on ebay, have the reciepts and all. I have Applecare for two more years. I try to install Iphoto and it gives me an error message "These apps cannot be accepted on this computer." I have everything that came with the computer. I h

  • How to create a mac os x 10.5 disc online in a later os x version macbook?

    how to create a mac os x 10.5 disc online for a macbook, on a macbook air os x 10.9.1? this would be for an older macbook.