Login Form

Best viewed in IE 7.0

ADVERTISEMENTS
ADVERTISEMENT

Display workflow log for an IDoc

This function module takes an IDoc number as input and displays the workflow logs associated with it. Modify as you see fit...

FUNCTION-POOL zedi.                        

TABLES: edidc,
        tbd52,
        edifct.

DATABEGIN OF g_bdcdata OCCURS 100.
        
INCLUDE STRUCTURE bdcdata.
DATAEND OF g_bdcdata.

DATA: eid LIKE bdwfretvar-wf_param 

        VALUE 'Error_IDOCs',
      pid 
LIKE bdwfretvar-wf_param 

        VALUE 'Processed_IDOCs',
      apo 
LIKE bdwfretvar-wf_param 

        VALUE 'Appl_Objects',
      ape 
LIKE bdwfretvar-wf_param 

        VALUE 'Appl_Object',
      c_wf_result_error 

        LIKE bdwfap_par-result VALUE '99999',
      c_wf_result_ok    

        LIKE bdwfap_par-result VALUE '0'.

DATA:  ok.

 

FUNCTION z_idoc_display_workflow_log.
*"-----------------------------------------
*"*"Local Interface:
*"  IMPORTING
*"     REFERENCE(DOCNUM) LIKE  EDIDC-DOCNUM
*"  EXCEPTIONS
*"      NO_IDOC_SENT
*"-----------------------------------------
  
DATA: objtype LIKE swotentry-objtype.

  
IF docnum IS INITIAL.

    
RAISE no_idoc_sent.

  
ELSE.

    
SELECT SINGLE mestyp 

      INTO edidc-mestyp FROM edidc
      
WHERE docnum = docnum.

    
IF sy-subrc = 0.

      
SELECT SINGLE fctnam 

        INTO edifct-fctnam
        
FROM edifct
        
WHERE mestyp = edidc-mestyp.

      
IF sy-subrc = 0.

        
SELECT SINGLE packetobjt 

          INTO tbd52-packetobjt
          
FROM tbd52
          
WHERE funcname = edifct-fctnam.

        
IF sy-subrc = 0.
          objtype = tbd52-packetobjt.
        
ENDIF.

      
ENDIF.

    
ENDIF.


    
REFRESH g_bdcdata.
    
PERFORM bdc_dynpro 

      USING 'SAPLSWI2'              '0100'.
    
PERFORM bdc_field  

      USING 'BDC_OKCODE'            '=OBJKEY'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-CATID'      'BO'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-BOR_OBJTYP' objtype.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-SELVARIANT' '0'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-TIME_SEL'   '003'.

    
PERFORM bdc_dynpro 

      USING 'SAPLSWOT'              '0200'.
    
PERFORM bdc_field  

      USING 'BDC_OKCODE'            '=SOK'.
    
PERFORM bdc_field  

      USING 'OBJID-VALUE(01)'       docnum.

    
PERFORM bdc_dynpro 

      USING 'SAPLSWI2'              '0100'.
    
PERFORM bdc_field  

      USING 'BDC_OKCODE'            '=STRT'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-CATID'      'BO'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-BOR_OBJTYP' objtype.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-SELVARIANT' '0'.
    
PERFORM bdc_field  

      USING 'SWI2SELDAT-TIME_SEL'   '003'.

    
CALL TRANSACTION 'SWI6' 

      USING g_bdcdata MODE 'E'.

  
ENDIF.

ENDFUNCTION.

ADVERTISEMENT
Free software downloads