Question on the status record of Idocs.

Hi all,
Where does the status of the idoc update::
1) In the idoc in the sap system/Idoc Archive
OR
2)The one we transfer to the OS as a flat file (for the translators(EDI subsystem) to work on)?
OR
both of the above?
Thanks,
Charles.

Hi,
Whenever the IDOC is generated there are one to many status record updated to idoc depending on it is inbound / outbound and various process / system is goes through.
Check transaction <b>WE47</b> to see all IDOC related status.
This is the range of status for IDOC.
OUTBOUND Idoc - Status between 1 to 49
INBOUND Idoc  - Status between 50 to 74
Also you can check the View <b>V_STACUST</b>. If you want to check status(s) of any idoc check table EDIDS.
Regarding two scenario you are talking about.
1. In the idoc in the sap system/Idoc Archive.
- When IDOC is generated, it get status record
- When you archive already created IDOC, the neither the status records are updated / changed or new status record are created
2. The one we transfer to the OS as a flat file (for the translators(EDI subsystem) to work on)?
- If you mean that you are sending IDOC to fine port then yes in that case also IDOC has status records.
Can you explain your second question in more detail?
Let me know if you have any other question.
Regards,
RS

Similar Messages

  • Error while updating the status record of IDOC in SAP

    Hi All,
    I am facing this problem. I have done outbound processing and IDOC was sent successfully from SAP to EDI system and it was processed in EDI and now EDI system wants to send the status back to SAP with a status message and the status number that we are using is '24' and we have mapped all the fields in the status table EDIDS and made sure that EDI system sends all those and I think Counter field can not be determined by EDI system so EDI system used the counter '1' since it can not determine how many counters are already there in SAP and unless we pass the value to this counter field we were getting the error. After passing all the values the status of the IDOC is updated with the status '00' instead of '24' and we do not know why it is happened and I would like to know how SAP converts the status record that is received from the EDI system.
    Please let me know how the status record will be translated into SAP from EDI system and I ahve followed basically EDIDS structure and the IDOC status is updating in SAP but with wrong status number and the alignemnt also missing in SAP fields like if I give some text in the EDI it is splitting and storing in 2 fields.
    Please help me in this and I think I have explained the problem in a detail manner.
    Thanks,
    Ramesh.

    Hi Naresh,
    Thanks for the reply and my question is since EDI system is able to send the status back to SAP from EDI system and only problem is it is updatinf the status wrong and I have checked the EDIDS table also and the entry is creating with another counter and please confirm me that it is because of EDI does not support the status record update so that I can confirm to the client that there is nothing wrong in the way SAP functions and EDI system can not update the status code in the SAP.
    Thanks,
    Ramesh.

  • Report to display all the status records of an Idoc

    Hi,
      I need to find out all the status records for an idoc and display them as a report. Is there any existing SAP Report that does that. I checked in table edids and all the status records of the idoc are not stored in the status text which is empty althogh there are 12 counters for the idoc.
    regards
    Aveek

    Hey Aveek;
       Try this, which will get the most recent one.  You would just need to change it to loop at the edids records to get at them all...
          TABLES: *edidc, *edids, *t100.
          DATA: wf_string type string.
          CLEAR *edids.
          SELECT SINGLE *
             INTO *edids
             FROM edids
             WHERE docnum = *edidc-docnum
               AND status = '51'.
          SELECT SINGLE text
             INTO *t100-text
             FROM t100
             WHERE sprsl = 'EN'
               AND arbgb = *edids-stamid
               AND msgnr = *edids-stamno.
             CLEAR wf_string.
          MOVE *edids-stapa1 TO wf_string.
          REPLACE '&' WITH wf_string INTO *t100-text.
          IF sy-subrc EQ 0.
            CLEAR wf_string.
            MOVE *edids-stapa2 TO wf_string.
            REPLACE '&' WITH wf_string INTO *t100-text.
            IF sy-subrc EQ 0.
              CLEAR wf_string.
              MOVE *edids-stapa3 TO wf_string.
              REPLACE '&' WITH wf_string INTO *t100-text.
              IF sy-subrc EQ 0.
                CLEAR wf_string.
                MOVE *edids-stapa4 TO wf_string.
                REPLACE '&' WITH wf_string INTO *t100-text.
              ENDIF.
            ENDIF.
          ENDIF.
          A little sloppy (OK, alot!), but it gets the job done...
    Cheers,
    John

  • Status record in Idocs.

    Hi SDNites,
    I wanted to know that the Idoc contains three components... Control record, Data Record and Status record. Which table contains all the status records like 54,53,03. What I mean to say is the table EDIDS gives the status of the particular Idoc with Idco number being the key field but where will i find as to which status stands for what? Like 53 stands for success. How do I find this out??? Kindly help.
    Thanks & Regards,
    Nehal.

    hi,
    an IDoc is assigned a two digit status for monitoring of the process.
    as you have already mentioned table EDIDS maintains the status records.
    status for outbound IDocs are btw '01' and '49' and for inbound IDocs '50' onwards.
    to find out what each status msg means you have to go into customization.
    goto tran. spro.
    sap netweaver->application server ->IDoc Interface/Application Link Enabling->System Monitoring->Set IDoc Status Display
    here you can find the text for all the status.
    hope this helps,
    cheers,
    Rakesh..

  • Bapi/FM to delete the status record from Business location(O402)

    Hi,
    Is there any BAPI/FM to delete the status from Business location?
    My requirement is  as follows:-
    1. I have to delete the last status from business location.
    2. I can find out the number of status maintained for a business location,
        a.  so if the status which i have to delete is visible in table contorl,
             i can decide the cursor position very easily in bdc.
         b. But if i have to scroll down to get the status record,
             in that the cursor position is not known.
    Please help.

    Hi,
    Any idea?
    Even if i write a bdc, i didn't know how to find the last record. The page down and page up will also not work as there may be chances that mutiple status can be removed.

  • How to update the status of Outbound IDOC in case of error

    I want to know about how to update the status of Outbound IDOC in case of error.
    I am using message control functionality here.

    HI,
    If u r using the standard message and basic type
    u can do it in the FM attached to the basic and message type.There u need to write ur own message instead of standard SAP message..chek if there r any userexits available in the FM..where u can overwrite ur own message ..
    If u r using the Zmessage and Zbasic type
    then u need to declare an internal table of EDIDS structure and then append ur message to the internal table..
    idoc_status-docnum   = idoc_contrl-docnum.
      idoc_status-msgty    = <message type>
      idoc_status-msgid    = message-id.
      idoc_status-msgno    = message-number.
      idoc_status-msgv1    = message-message_v1.
      idoc_status-repid    = sy-repid.
      idoc_status-status   = <give the error status>.
      APPEND idoc_status.
    Reward if u find useful
    Regards,
    Nagaraj

  • How to check the status of an IDoc in the Target system

    Hi Experts,
    we are using a self-made program to send Material and BOMs from Client A to Client B into the same ERP System.
    How can I check the status of an IDoc in the Target Client B (like BD87 - ALE Monitor) ?
    If you have some examples or Function, please give me the information.
    Rewards if helpful.
    Regards,
    David

    Hi David
    As mentioned in the earlier reply you can check your status with tcodes:-BD87,WE02,WE05.What i guess from your querry is the staus of your idoc whether posted or not in target client B.Check in the target client for the message type which you are using (since its an program that means you must be using an customised idoc type or standard) .You might have maintained Basic type tcode:-WE30.Give in your messagetype,Basictype,Created at and executed using tcode :- BD87.The prerequisites are you need to create an Partner Profile(WE20) .For this you need to create to provide in your message type and Process code(we41,we42,we57).If you have to create an process code for customised one(se37) .You need to actuivate the idoc inbound processing .If you are using a file in your file make it sure the port is being maintained for the same to chek for unicode format in tcode :-WE21 (check or uncheck).
                    For standard BOM i recon you are using message type :-BOMMAT  and Processing code as:-BOMM.Its always advisible that instead of using an whole abap program you need to have an ETL tool that would take care of the extraction of data provided your client do have existing Legacy system in its place since it would be much faster and easier.
    Regards
    Somnath

  • Which IDOC-type to manipulate the status of other IDOC?

    Hi everybody,
    which IDOC-type should be used to modify the status of another IDOC?
    Thanks, regards
    mario

    STATUS message type in SYSTAT01 idoc type.
    TABNAM     EDI_DS40
    MANDT     010
    DOCNUM     0000000026606468
    LOGDAT     20070530
    LOGTIM     015642
    STATUS     24
    UNAME     EDIUSER
    REPID     GENTRAN
    STACOD     24     Status code
    STATXT     Trading Partner Found     Text for status code
    STATYP     I  : Information     Type of system error message (A, W, E, S, I)

  • How to get the Status of an Idoc of successfully received in remote system

    Hi,
    I have created a report which post an idoc from system1 to remote SAP system2.
    But i want to get the final staus of posted idoc in system1 that the idoc posted was reached successfully to SAP system2  with status 53 only.
    Actually i need to show the final staus of the posted idoc in system 1.
    Is there any kind of acknowlegement can be received for an idoc posted that idoc has been reached to reamote system(SAP system in my case) sucessfully?
    If yes then how we can do that.
    Kindly reply.

    HI,
    you need IDoc Type ALEAUD.
    1. BD64 and maintain ALEAUD Messagetype to your distribution model
    2. WE20 - assign ALEAUD messagetype to your partner profile (in sending and receiving system)
    3. call report RBDstate to send ALEAUD message IDoc.
    note: the receiving system from the source IDoc sends the ALEAUD to the sending system.
    Another way:
    BDM2 - you can see IDoc number and status from sending and receiving system
    Regards,
    Gordon
    Edited by: Gordon Breuer on Oct 8, 2008 2:35 PM

  • Some question on IDOC (Control Record/Data Record/Status Record)

    Dear all,
    I am new in this area, and would like to enquire some question on this topic.
    When I view a IDOC via WE02, each of the IDOC record will consist of Control Record/Data Record/Status Record).
    Questions:
    I notice that the data records consists of many segment (i.e. E1EDK01, etc) which are use to store application data.
    1 - My question is do I have to manually create all these segment and do a mapping to my application field one by one (i.e. that is when I want to create a brand new message type from scratch)?
    2 - If question no. 1 is Yes, how to do it, what are the transaction code to create it? can you show me the step by step.
    3 - I don't have to create the Control record and the status record for my new message type right ? because those field value will automatically pull out from partner profile and system status message, am I correct?
    Thanks.
    Tuff

    Hi Tuff,
    As everything in SAP, with IDOCs too there are
    1) Standard IDOCs
    2) Standard IDOCs(Extending - Enhancement to an IDOC, to accomodate for custom values)
    3) Custom IDOCs
    And every IDOC has,
    Control record - EDIDC Structure - This mostly reflects the partner profile information, along with few more details which are used for IDOC extension, Sequencing etc
    Data Records - EDID4 Structure - These records contain the actual business data of the document in concern. So for ORDERS05 it would contain order details, INVOIC02 - Invoice details so on...
    Status Records - These records capture the status of an IDOC from the time it is received/sent from your system and a corresponding business document is created/changed. So this will have messages like "IDOC sent to the port OK" etc which are status from the communication layer(ALE) to application specific messages like "Sales Order XXX created" or "Invalid Material" etc.
    You would have noticed something called as Process code in the partner profile, this is associated with a FM(or work flow task etc) which has the business logic coded in.
    So in case of an Inbound IDOC, the sending system updates the IDOC - Control and Data records, and sends it to the receiving system. On the receiving system the IDOC's control record is validated against the partner profiles set, if an entry is found then using the process code it finds the associated FM which will decode the data from the IDOC data records as per the IDOC type and then use it to post data into SAP (VIA BDC, Batch Input, BAPI etc).
    And all this while the Status records are being updated accordingly.
    So with the above context will try to answer your questions,
    1 - My question is do I have to manually create all these segment and do a mapping to my application field one by one (i.e. that is when I want to create a brand new message type from scratch)?
    In case of a custom IDOC, yes you will have  to.
    In case of a standard IDOC, you wouldn't have you just have set up the necessary configuration (Partner Profile, Process code etc)
    In case of a standard IDOC extended to accommodate for some custom values(for which there are no fields in standard IDOC - Let us say you have added some new fields on VA01) - In this case you can still use the standard Process code and Standard FM associated with it, SAP provides several Function exits in these FM's which you can leverage to add your custom logic.
    2 - If question no. 1 is Yes, how to do it, what are the transaction code to create it? can you show me the step by step.
    There are several documents available on the net and on SDN detailing step by step approach for all the above three cases,
    just search for step by step guide for IDOCS - sap.
    3 - I don't have to create the Control record and the status record for my new message type right ? because those field value will automatically pull out from partner profile and system status message, am I correct?
    Again it depends, in case of using a standard IDOC you wouldn't have to. But in case you have some customizations/enhancements then you might have to.
    For Ex: updating the control record accordingly for indicating that you have extended the standard IDOC. Or append custom messages to the status record as per the business logic.
    Try out the examples you find on the net and post any specific questions you might have.
    Regards,
    Chen

  • IDOC inbound ....Status record !

    IDOC_STATUS-MSGID = 'YM'.
    What is the above variable means ?
    Where from i will be able to know what is the MSGID of my  IDOC  which i have created ...using we31 ,we30 ,we81, we82.

    Hi Friend,
    Go to transaction WE02 and execute with IDOC number.
    Doubel click IDCO number on list, expand the status records.
    Double click on any status number, in STS DETAILS table you will get the message ID.
    Hope it will solbe the probelm.
    Regards
    Krishnendu

  • IDoc status 51 - LSMW for Creating Purchasing Info Records using IDoc meth

    Dear All,
    My req is to create a Conversion for Purchasing Info Records. LSMW's IDoc method is used to develop this conversion wherein Message Type "INFREC" and Basic Type "INFRECMASS01" are being used.
    In the 14th step (Start IDoc Processing), I 'am getting the IDoc status "51" and Status Text "Application document not posted". If I double click on respective IDoc number, I got its Control record, Data records, and Status records; in the status records I can see "51" in Red color with the message "Function module not allowed: IDOC_INPUT_INFREC". If I double click on this it asks me to check the process code...
    Request you guys to resolve the issue....
    Solution will b rewarded.. Thanks in advance....

    U should use basic type INFREC01 instead of NFRECMASS01.
    Within the FM there is a check for basic type like:
    check idoc type
        if f_idoc_control-idoctp <> c_idoctp_infrec01. " INFREC01
          raise wrong_function_called.
        endif.
    Edited by: Joyjit Ghosh on Sep 15, 2008 4:57 PM

  • IDoc Control Record and Status Record Code,  where is it!!!

    Hi,
      Where can i see the code for generation of control record and status record of IDoc.
       Thanks in advance for your answers

    hi ,
    1.first create an segment with the fields u want tcode we31 relase it .
    2. create an idoc and assign segment to it tcode we30.
    3.crate a message type  tcode we81
    4.assign that message to idoc  tcode we 82.
    do the ale configarations .
    now u can write the code in our sender system
    *1.     Create parameters/select-options for input data. i.e., message type, logical system.
    parameters : p_mestyp like edmsg-msgtyp default 'ZKKUMSG',
                 p_logsys like tbdlst-logsys obligatory.
    *2.     Create Data objects for control record, data record and database table.
    data : c_segment like edidd-segnam value 'ZKKUSEG',        "Data record (IDoc)-Segment type
           c_idoctp like edidc-idoctp value 'ZKKUIDOC'.            "Control record (IDoc)-Basic type
    data : begin of i_tab occurs 0,
              ZKSNO   like ZKSTD-ZKSNO,
              ZKSNAME like ZKSTD-ZKSNAME,
           end of i_tab.
    data : w_itab like i_tab.
    data : s_segment like ZKKUSEG.
    data : i_edidd like edidd occurs 0 with header line.
    data : i_control_record like edidc.
    data : i_comm_idoc like edidc occurs 0 with header line.
    *3.     Select the data from responding tables into internal table for a defined condition.
    here you have take ur internal table
    *select single zsno zsname from zkiran into corresponding fields of itab where zsno = p_sno.
    *4.     create control record into internal table.
    i_control_record-mestyp = p_mestyp.         "Message Type
    i_control_record-idoctp = c_idoctp.         "Basic type
    i_control_record-rcvprt = 'LS'.             "Partner Type of Receiver
    i_control_record-rcvprn = p_logsys.         "Partner Number of Recipient
    *5.     create data record into internal table.
    *i_edidd-segnam =   c_segment.
    loop at i_tab into w_itab.
    s_segment-zksno    = w_itab-ZKSNO.                     "Application Data
    s_segment-zksname  = w_itab-ZKSNAME.
    i_edidd-sdata     = s_segment.
    i_edidd-segnam    = c_segment.
    clear w_itab.
    append i_edidd.
    endloop.
    *6.     Process ALE Service Layer using the function module  MASTER_IDOC_DISTRIBUTE.  It returns the corresponding IDoc No.s.
    call function 'MASTER_IDOC_DISTRIBUTE'
      exporting
        master_idoc_control            = i_control_record
      tables
        communication_idoc_control     = i_comm_idoc
        master_idoc_data               = i_edidd
      exceptions
        error_in_idoc_control          = 1
        error_writing_idoc_status      = 2
        error_in_idoc_data             = 3
        sending_logical_system_unknown = 4
        others                         = 5.
    if sy-subrc <> 0.
      message id sy-msgid type sy-msgty number sy-msgno
              with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.
    *7.     Display Communication IDocs.
    loop at i_comm_idoc.
      write : / 'Communication IDoc No. is : ', i_comm_idoc-docnum.
    endloop.
    *8.     Commit Work.
    commit work.
    i hope this sample code help u .
    thanks

  • Idocs status records!!!

    Hi,
    We have a requirement in which the status records need to be added in the inbound Idoc.
    In the present scenario, Idoc status records are being created like : status 52 Inbound delivery/deliveries are created(no's are 000001 to 000005). This is current scenario.
    Requirement is like :
    we need to have the number of status records depends on Inbound deliveries created.
    For ex : If two inbound deliveries gets created in an Inbound Idoc, then In Idoc status records should be like :
    Status 52 Inbound delivery created ( no 0000001 to 0000001)
    Status 52 Inbound delivery created ( no 0000002 to 0000002)
    Status 52 Inbound delivery created ( no 0000003 to 0000003).
    and so on.......
    Please let us know how can we acheive the above scenario?
    Thanks in advance.
    Ramesh.

    The inputs to the IDoc processing function are:
    *"*"Local interface:
    *"  IMPORTING
    *"     REFERENCE(INPUT_METHOD) TYPE  BDWFAP_PAR-INPUTMETHD
    *"     REFERENCE(MASS_PROCESSING) TYPE  BDWFAP_PAR-MASS_PROC
    *"  EXPORTING
    *"     VALUE(WORKFLOW_RESULT) LIKE  BDWFAP_PAR-RESULT
    *"     VALUE(APPLICATION_VARIABLE) LIKE  BDWFAP_PAR-APPL_VAR
    *"     VALUE(IN_UPDATE_TASK) LIKE  BDWFAP_PAR-UPDATETASK
    *"     VALUE(CALL_TRANSACTION_DONE) LIKE  BDWFAP_PAR-CALLTRANS
    *"  TABLES
    *"      IDOC_DATA STRUCTURE  EDIDD
    *"      IDOC_CONTRL STRUCTURE  EDIDC
    *"      *IDOC_STATUS STRUCTURE  BDIDOCSTAT*
    *"      RETURN_VARIABLES STRUCTURE  BDWFRETVAR
    *"      SERIALIZATION_INFO STRUCTURE  BDI_SER
    *"  EXCEPTIONS
    *"      WRONG_FUNCTION_CALLED
    The status records are returned from the processing function via the parameter IDOC_STATUS which is an internal table so you can append multiple entries to it.
    The only restriction is that all records must have the same status code (ex. all must be 51 is there is an error, or all must be 53 if there are no errors).  An IDoc processing function executes as a single DB transaction so it is all or nothing.
    ~Ian

  • How to remove the timeline recording status from published projects?

    Hi
    I am using Captivate 5 and would like to know what/where to find the settings to take the status recording bar off for my published projects.
    Sorry I'm not sure what to call this but It's the timeline that lets' you pause, play, fastforward, rewind, etc.
    Image attached/Below!
    Thank you so much!
    Heidi

    Hi there
    This is known as the "Playback Controls" or "Playbar".
    To remove it, click Project > Skin Editor and clear the option labeled "Show Playback Control".
    Cheers... Rick
    Helpful and Handy Links
    Captivate Wish Form/Bug Reporting Form
    Adobe Certified Captivate Training
    SorcerStone Blog
    Captivate eBooks

Maybe you are looking for

  • How to make a realistic tshirt template in photoshop

    Hellow Experts. Today i spend more then 8 hours on google to find out how to make a realistic tshirt template but couldn't find so i am putting my question on front of the experts of this forum, i hope you guys will help me. so i start selling tshirt

  • Acrobat X pro doesn't work with Yosemite

    I use Acrobat X pro on mac OS X , and  I updated to Yosemite . Since this update, I can't use Acrobat pro . When I want to edit a pdf, the window displaying "Software license agreement" appears....no way to modify a file. I checked: I have the latest

  • Disable a button component onClick

    hi, I am work with JSF technology. I have a requirement based on command Button i.e.. can we create make a command button disabled on click and the request is to be send to the server scenerio: In my application if the user clicks multiple times the

  • How to make this in CSS

    Hello all! I'm trying to figure out the best way to make this text box using CSS The purple is just the background. I'm not sure how to apply the shaded sides. My solution is to add the entire box image but some will contain more text and they have t

  • Set security at app level

    Hello, Is it possible to set security for a group at the application level so it automatically trickles down to the databases below (even new ones)? Thank you in advance.