Item Deletion Flag

Dear Mentors
Where i can check item deletion fiag (mm06) whether item flag is active or not ?
Regards
Laxman

Hi,
You can check it in MM06 one-by-one.
If you have several goods to be checked you have to use SE16 (to check tables) or SQVI (to create query using two or more tables).
Since you can mark a material with DF at different organisational levels, you have to use the appropriate material master tables tables.
E.g. if you marked your goods at client level the DF can be found in table MARA (MARA-LVORM). If you marked your goods at plant level, try table MARC (LVORM). You can use DF at SLoc level, WH level, etc...
BR
Csaba

Similar Messages

  • Purchase contract item deletion flag

    Hi SAP experts.
    By mistake an item line of a purchase contract was flagged for deletion in transaction ME32K, is there a way to remove the flag?
    I hope someone can help me.

    Hi
    Go into Contract in change mode (ME32K)
    Select the line item,
    Edit--> Reset deletion indicator  and SAVE.
    Thanks
    Sasi

  • How to set deletion flag in Production order item level

    Hi Friends,
    I have a requirement like...
    Suppose production order conatians 100 items. now i want to set deletion flag for 20 items only.
    In Co02 t.code deletion check box is disable mode.
    There are nearly 100 production orders .i have to write the program....
    Is there any BAPI or other way to meet this requirement.
    Can you please help me..

    Also, You might want to have a look at the BAPIs like BAPI_PRODORD_SET_DELETION_FLAG which are used to set the deletion indicator but it appears to me the deletion flag can only be set at the header level using these BAPIs.
    Please have a look at SAP business object BUS2005 methods from transaction SW01 for more Production Order related BAPIs.
    One more thing ... since you mentioned that in CO02 the deletion indicator is greyed out, then it might mean you are missing the authorizations to set the deletion flag. Please consult with your Authorization (BASIS) administrator. As a hint, the authorization object here is C_AFKO_AWK.
    Cheers,
    Aditya

  • How to delete or activate the deletion flag for the sales order line item

    Hi All,
    I  have one Cust order & with referance to that cust order one production order is created . The production order user has done the Goods issue with 261 movement type  & GR wi 101 before 4 months back , & he has reverse  the GR  with 102 on todays date . but in materila master the  variable prize is maintain thats why it is showing  a differance in the cost .
    User want to delete the Production order as well as the custemer order From MDO4 , So we have make the Production order TECO & save , it is gone form the MD04 but the Custumer order still there . It is not allow us to cancell or reject . We have tried to maintain the reason for rejection but it showing the message that you can not activate the deletion flag for the order .
    Could you please Help me to find out the way how can i delete the custemer order ?
    Thanks In advance
    Regards
    Piyush

    W ehave Settele that order & then activate the deletion flag for the order & then cancel the sales order.

  • Inbound delivery item deleted is not deleted from BI DSO?

    Hi All
      An Inbound deliver created and pushed to BI..
    Source PSA is FULL UPDATE and DTP is DELTA UPDATE
    Ex: 800000 10   10000
                        20  10000
    This is what pushed to ODS..Later next day,
    they deleted the to 800000 10 10000
    So PSA is refreshed with one item .
    800000 10 10000
    whereas DSO still shows as follows:
    800000 10 10000
                  20 10000
    I have following options:
      1. convert DTP to FULL update, so the data gets refreshed..
    2. ELse delete the only one record..
    But user sometimes need to delete the inbound delivery....based on item required..
    we cannot go and delete everytime for this issue..
    What are the best solutions that you experts can suggest.??

    HI...
    This is a known problem in ECC-BI.   Deliveries can only be deleted from ECC system but can not be cancelled. So the extractor is not able to provide a deleted image for the record. 
    Two solution can be there,
    1. Full Load of all BI target every day ---this solution is practical only when your data volume is less and full load does not take much time. But if your data volume is huge and flow is complex one then this is not the solution.
    2. Second solution is to identify which Delivery Doc - Item combination got deleted from ECC system and then you can just put a flag against those documents. 
    You can easily find which doc- item got deleted from CDPOS and CDHDR entry. In our project we created one DataSource based on InfoSet Query ( SQ02) on CDPOS ( item level) and CDHDR ( header level) and pulling all the documents which got deleted in ECC system. For all those Delivery-Item we put a deletion flag and restrict the query accordingly.
    in CDPOS following fields are important.
    a) CHNGIND: Change Type (U, I, S, D) u2013 This field shows whether the entry is deleted, updated or inserted. We are here interested in the value: D (Deleted).
    b) OBJECTCLAS: Object class u2013 This field is used to get the data related to Deliveries, Sales etc. For deliveries, value is LIEFERUNG; For Sales, value is VERKBELEG
    c)TABNAME: Table Name u2013 This field contains the table name from which the value is deleted. The tables for Deliveries are LIKP and LIPS. To get the item level data, keep the value as LIPS.
    d) TABKEY is 18 characters long field, in which first 3 numbers is the client number, next 10 shows the document number and next 5 shows the item number. E.g.: 750001099999900010, where 750 is client, 0010999999 is document number and 00010 is item number
    Also have a look at How to Guide below
    Link [CDPOS-CDHDR|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/50dd3fb9-0dad-2d10-0ea7-cbb0bb8b391b?QuickLink=index&overridelayout=true]
    how to view deleted delivery
    Regards
    Anindya

  • Production order gets automat. deletion flag if a change in sales order hap

    Dear friends,
    I have the problem that there is a change in the sales order ( for example the customer) and then the already existing production order receives a deletion flag wich cannot be done undo.
    For example, we receive a request for a sales and we create a sales order. Afterwards, we will create the sales order with the customer who gave us the request. Then we can directly start with the Engineering, purchasing and so on. After a period of time, it happens that the "real" customer is know. So, each sales order line item will be deliverd to another customer. This can be relevant for the export control if the customers are located in different countries.
    At the time of adding or chanign the new customer and saving the already existing production order will receive the deletion flag.
    For me this situation is strange as I would not expect that the production order would receive a deletion flag only because a change in the sales order occurs.
    Can please anyone help!?
    Thank you very much,
    Bjoern

    Dear Friends,
    thank you very much.
    I found the problem and this is actually a funtionality comming from the export control checks. I forwarded this to our export control specialist as I dont see this as a production theme.
    The problem was, that the customer was changed and it was a different country. In this case the export control was activated and the online check was not sucsessfull. In this case a production is not allowed anymore and the system directly deletes the production order independing in which status the order is.
    Interesting function.
    Thank you all!

  • Production order gets automat. deletion flag if a change in sales order ha

    Dear friends,
    I have the problem that there is a change in the sales order ( for example the customer) and then the already existing production order receives a deletion flag wich cannot be done undo.
    For example, we receive a request for a sales and we create a sales order. Afterwards, we will create the sales order with the customer who gave us the request. Then we can directly start with the Engineering, purchasing and so on. After a period of time, it happens that the "real" customer is know. So, each sales order line item will be deliverd to another customer. This can be relevant for the export control if the customers are located in different countries.
    At the time of adding or chanign the new customer and saving the already existing production order will receive the deletion flag.
    For me this situation is strange as I would not expect that the production order would receive a deletion flag only because a change in the sales order occurs.
    Can please anyone help!?
    Thank you very much,
    Bjoern

    Dear Friends,
    thank you very much.
    I found the problem and this is actually a funtionality comming from the export control checks. I forwarded this to our export control specialist as I dont see this as a production theme.
    The problem was, that the customer was changed and it was a different country. In this case the export control was activated and the online check was not sucsessfull. In this case a production is not allowed anymore and the system directly deletes the production order independing in which status the order is.
    Interesting function.
    Thank you all!

  • F110 - Error Msg "No payment due to delete flag or posting block"

    When I use F110 To auto payment a AP open item, the system show the message "Vendor <Vendor Code> <Company Code>: No payment due to delete flag or posting block" in job log.
    The AP open item information :
    amount 480.
    bline date : 2008/09/29
    payment term : immediate payment
    due date : 2008/09/29
    vendor payment method : E
    D : expense 480
       C : AP - <Vendor Code>  480
    The parameter in F110 :
    run date : 2008/11/10
    indentification : TEST
    Parameter :
    posting date 2008/11/10
    docs entered up to 2008/11/10
    company codes : <Company Code>
    pmt meths : E
    next p/date : 2008/11/11
    vendor codes : <Vendor Code>
    I don't understand the mean of "Vendor <Vendor Code> <Company Code>: No payment due to delete flag or posting block", how should I payment this AP open Item by F110.
    Best regards,

    Hi Eric,
    Seems like your vendor has been blocked at company code level for any further posting. Try and check with transaction code FK05 or XK05.
    If it's blocked then just unblocked it and then try run your payment run.
    Cheers
    Samir

  • Regarding purchase order header deletion flag indicator

    hi all,
    Right now in SAP PO header deletion flag has been set to X.
    so what i need is the PO should be flagged only at item level .
    how can i proceed?where can i find the deletion flag in the transaction screen?

    You can find in item overview (RM06E-LOEKZ)

  • BAPI to change purchase order to put deletion flag

    Hello Guru's,
            We are about to archive data & for that we need that according to date range all open purchase order ,open purchase requsitions & open RFQ should be marked for deletion.
    Is there some BAPI to do so.Please guide.

    *DELETING FLAG *
    REPORT ZMMR_DELETEPO NO STANDARD PAGE HEADING MESSAGE-ID zisb.
    tables : zvtls_sap.
    *C-- Types Declarations
    TYPES : BEGIN OF tp_flatfile_vtls,
            ebeln(10),
            ebelp type ekpo-ebelp,
            END OF tp_flatfile_vtls.
    *=====================================================================
                      INTERNAL TABLES DECLARATION
    *=====================================================================
    DATA:  t_flatfile_vtls TYPE tp_flatfile_vtls OCCURS 0 WITH HEADER LINE.
    data : begin of t_sapdata occurs 0,
           po like zvtls_sap-posap,
           item like zvtls_sap-itemsap,
           end of t_sapdata.
    data : begin of t_flatfile_vtls1 occurs 0,
           po(10),
           item like zvtls_sap-itemsap,
           end of t_flatfile_vtls1.
    data : begin of t_update occurs 0,
           mandt like zvtls_sap-mandt,
           povtls like zvtls_sap-povtls,
           itemvtls like zvtls_sap-itemvtls,
           posap like zvtls_sap-posap,
           itemsap like zvtls_sap-itemsap,
           aedat like zvtls_sap-aedat,
           paedt like zvtls_sap-paedt,
           loekz like zvtls_sap-loekz,
           end of t_update.
    data : begin of t_poheader occurs 0,
           po like zvtls_sap-posap,
           end of t_poheader.
    data : begin of t_poitem occurs 0,
           po like zvtls_sap-posap,
           item like zvtls_sap-itemsap,
           end of t_poitem.
    DATA : BEGIN OF T_MESSAGE OCCURS 0,
           MSGTY,
           MSGID(2),
           MSGNO(3),
           MSGTX(100),
           PO like zvtls_sap-povtls,
           item like zvtls_sap-itemvtls,
           END OF T_MESSAGE.
    DATA : BEGIN OF t_bapi_poheader OCCURS 0.
            INCLUDE STRUCTURE bapimepoheader.
    DATA : END OF t_bapi_poheader.
    DATA : BEGIN OF t_bapi_poheaderx OCCURS 0.
            INCLUDE STRUCTURE bapimepoheaderx.
    DATA : END OF t_bapi_poheaderx.
    DATA : BEGIN OF t_bapi_poitem OCCURS 0.
            INCLUDE STRUCTURE bapimepoitem.
    DATA : END OF t_bapi_poitem.
    DATA : BEGIN OF t_bapi_poitemx OCCURS 0.
            INCLUDE STRUCTURE bapimepoitemx.
    DATA : END OF t_bapi_poitemx.
    DATA : BEGIN OF t_bapireturn OCCURS 0.
            INCLUDE STRUCTURE bapiret2.
    DATA : END OF t_bapireturn.
    *=====================================================================
                      V A R I A B L E S
    *=====================================================================
    DATA: w_success(6)  TYPE n,
          w_bklas like t023-bklas,
          w_curryear(4),
          w_begda like sy-datum,
          w_endda like sy-datum,
          w_begyr(4),
          w_endyr(4),
          w_currmon(2),
          w_assetclass like ankt-anlkl,
          w_price type p,
          w_recordsap type i,
          w_povtls(10),
          w_count type i.
    DATA:  w_filepath TYPE rlgrap-filename,
           w_rc TYPE sy-subrc,
           w_sscrfields_ucomm1   TYPE sscrfields-ucomm,
           w_file1 TYPE string,
           w_file2 TYPE FILENAME-FILEINTERN.
    *=====================================================================
                      C O N S T A N T S
    *=====================================================================
    CONSTANTS: c_x              TYPE  c         VALUE 'X',
               c_hyp            TYPE  c         VALUE '-',
               c_err            TYPE  bdc_mart  VALUE 'E'.
    CONSTANTS:  c_slash(1)            TYPE c VALUE '/',
                c_hash(1)             TYPE c VALUE '#',
                c_pipe                TYPE c VALUE '|',
                c_1                   TYPE i VALUE 1,
                c_zero                TYPE n VALUE '0',
                c_rg1(3)              TYPE c VALUE 'rg1',
                c_gr3(3)              TYPE c VALUE 'GR3',
                c_gr2(3)              TYPE c VALUE 'GR2',
                c_e(1)                TYPE c VALUE 'E',
                c_filepath(8)         TYPE c VALUE '/interf/',
                c_filetype(10)        TYPE c VALUE 'ASC'.
    CONSTANTS : c_bapimepoheaderx   TYPE x030l-tabname
                                   VALUE 'bapimepoheaderx',
               c_bapimepoitem      TYPE  x030l-tabname
                                   VALUE 'bapimepoitem',
               c_bapimepoaccount   TYPE  x030l-tabname
                                   VALUE 'bapimepoaccount',
               c_t_bapi_poheader(15)        TYPE c
                                            VALUE 't_bapi_poheader',
               c_t_bapi_poitem(13)          TYPE c
                                            VALUE 't_bapi_poitem',
               c_t_bapi_poitemx(14)         TYPE c
                                            VALUE 't_bapi_poitemx',
               c_t_bapi_poheaderx(16)       TYPE c
                                            VALUE 't_bapi_poheaderx'.
    CLASS cl_abap_char_utilities DEFINITION LOAD.
    CONSTANTS:con_tab  TYPE c VALUE cl_abap_char_utilities=>horizontal_tab.
    *======================================================================
                           SELECTION SCREEN
    *======================================================================
    SELECTION-SCREEN BEGIN OF BLOCK inputpath WITH FRAME TITLE text-001.
    SELECTION-SCREEN : BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
    PARAMETERS : p_fore RADIOBUTTON GROUP rg1
                        USER-COMMAND pc,
                 p_back RADIOBUTTON GROUP rg1 DEFAULT 'X'.
    SELECTION-SCREEN : END OF BLOCK blk2.
    SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-003.
    PARAMETERS :  p_file1 LIKE rlgrap-filename OBLIGATORY MODIF ID gr2.
    PARAMETERS :  p_afile1 LIKE rlgrap-filename OBLIGATORY MODIF ID gr3.
    SELECTION-SCREEN : END OF BLOCK blk1.
    SELECTION-SCREEN END OF BLOCK inputpath.
    *C-- Initialization Event
    INITIALIZATION.
      CLEAR w_filepath.
      CONCATENATE c_filepath sy-sysid c_slash sy-mandt c_slash INTO
      w_filepath.
      CONDENSE w_filepath NO-GAPS.
      p_file1 = text-008.
      p_afile1 = text-009.
    *======================================================================
                           SELECTION SCREEN EVENTS
    *======================================================================
    *C-- Selection Screen Output
    AT SELECTION-SCREEN OUTPUT.
      IF p_fore = c_x.
        w_sscrfields_ucomm1 = space.
      ELSE.
        w_sscrfields_ucomm1 = c_rg1.
      ENDIF.
      LOOP AT SCREEN.
    *C--Modify selection screen if presentation
    *C--or application server radio button is chosen
        IF w_sscrfields_ucomm1 = space.
          IF screen-group1 = c_gr3.
            screen-active = c_zero.
          ENDIF.
        ELSE.
          IF screen-group1 = c_gr2.
            screen-active = c_zero.
          ENDIF.
        ENDIF.
        if screen-name = 'P_AFILE1'.
          screen-input = 0.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.
    *C-- Selection Screen VALUE-REQUEST FOR File path
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
      IF p_fore EQ c_x.
        CALL FUNCTION 'F4_FILENAME'
          EXPORTING
            program_name  = syst-cprog
            dynpro_number = syst-dynnr
          IMPORTING
            file_name     = p_file1.
      ENDIF.
    *C-- At Start of the Selection Process
    START-OF-SELECTION.
      IF p_fore EQ c_x.
        w_file1 = p_file1.
      ELSE.
        w_file2 = p_afile1.
      ENDIF.
      IF p_fore EQ c_x. " Presentaion Server
    *C--Validations for the input files
        PERFORM validate_pre_file USING p_file1.
    *C-- Load the contents of the input file into the internal table
        PERFORM upload_file TABLES t_flatfile_vtls
                            USING w_file1
                            CHANGING w_rc.
        IF w_rc <> 0.
          MESSAGE s006 DISPLAY LIKE c_e.
        ENDIF.
      ELSE. " Application Server
    *C--Validations for the input files
        PERFORM validate_app_file USING  w_file2.
    *C-- Load the contents of the input file into the internal table
        PERFORM upload_file_app TABLES t_flatfile_vtls
                                USING w_file2
                                CHANGING w_rc.
      ENDIF.
      loop at t_flatfile_vtls.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = t_flatfile_vtls-ebeln
          IMPORTING
            output = t_flatfile_vtls1-po.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = t_flatfile_vtls-ebelp
          IMPORTING
            output = t_flatfile_vtls1-item.
        append t_flatfile_vtls1.
        clear t_flatfile_vtls1.
      endloop.
      perform get_podata.
      loop at t_poheader.
        perform move_to_bapi.
        perform call_bapi.
      endloop.
      PERFORM STORE_MESSAGES TABLES T_MESSAGE.
    *&      Form  validate_pre_file
        Routine to validate presentation server file path.
         -->fp_name  text
    FORM validate_pre_file USING fp_name TYPE rlgrap-filename.
      DATA : l_result,
             l_filename TYPE string.
      l_filename = fp_name.
      CLEAR l_result.
      CALL METHOD cl_gui_frontend_services=>file_exist
        EXPORTING
          file                 = l_filename
        RECEIVING
          result               = l_result
        EXCEPTIONS
          cntl_error           = 1
          error_no_gui         = 2
          wrong_parameter      = 3
          not_supported_by_gui = 4
          OTHERS               = 5.
      IF sy-subrc <> 0.
        MESSAGE s007 DISPLAY LIKE c_e.
        LEAVE LIST-PROCESSING.
      ELSEIF l_result IS INITIAL.
        MESSAGE s008 DISPLAY LIKE c_e.
        LEAVE LIST-PROCESSING.
      ENDIF.
    ENDFORM.                    " validate_pre_file_hdr
    *&      Form  validate_app_file
          text - Checks if the path entered and filename is correct
    FORM validate_app_file USING  fp_file  TYPE FILENAME-FILEINTERN.
      data : l_fname(60).
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = FP_FILE
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = L_FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = '0'.
        OPEN DATASET  L_FNAME FOR INPUT IN TEXT MODE ENCODING DEFAULT.
        IF sy-subrc NE 0.
          MESSAGE s007 DISPLAY LIKE c_e.
        ELSE.
          CLOSE DATASET l_fname.
        ENDIF.
      ENDIF.
    ENDFORM.                    " validate_app_file
    *&      Form  upload_file
          Routine to upload data from file to tables.
         -->P_fp_flatfile
         -->P_fp_file
         <--P_fp_rc
    FORM  upload_file TABLES   fp_flatfile
                      USING    fp_file TYPE string
                      CHANGING fp_rc TYPE sy-subrc.
      IF fp_flatfile[] IS INITIAL.
        CALL FUNCTION 'GUI_UPLOAD'
          EXPORTING
            filename                = fp_file
            filetype                = c_filetype
            has_field_separator     = c_x
          TABLES
            data_tab                = fp_flatfile
          EXCEPTIONS
            file_open_error         = 1
            file_read_error         = 2
            no_batch                = 3
            gui_refuse_filetransfer = 4
            invalid_type            = 5
            no_authority            = 6
            unknown_error           = 7
            bad_data_format         = 8
            header_not_allowed      = 9
            separator_not_allowed   = 10
            header_too_long         = 11
            unknown_dp_error        = 12
            access_denied           = 13
            dp_out_of_memory        = 14
            disk_full               = 15
            dp_timeout              = 16
            OTHERS                  = 17.
        MOVE sy-subrc TO fp_rc.
      ENDIF.
    ENDFORM.  " upload_file
    *&      Form  upload_file_app
          text
         -->FP_FLATFILEtext
         -->FP_FILE    text
         -->FP_RC      text
    FORM  upload_file_app TABLES   fp_flatfile
                          USING    fp_file TYPE FILENAME-FILEINTERN
    CHANGING fp_rc TYPE sy-subrc.
      DATA: l_string TYPE tedata-data.
      DATA: wa_data_file TYPE tp_flatfile_vtls,
            l_wllength TYPE i,
            FNAME(60).
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = FP_FILE
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = 0.
        OPEN DATASET  FNAME FOR INPUT IN TEXT MODE ENCODING DEFAULT.
        IF sy-subrc NE 0.
    *C-- commented by Bikash
         MESSAGE s107(yaero_ps) DISPLAY LIKE c_e.
          message e008.
        ELSE.
          DO.
            CLEAR: l_string.
            READ DATASET  FNAME INTO l_string LENGTH l_wllength.
            IF sy-subrc NE 0.
              EXIT.
            ELSE.
              SPLIT l_string AT con_tab INTO   wa_data_file-ebeln
                                               wa_data_file-ebelp.
              APPEND wa_data_file TO fp_flatfile.
            ENDIF.
          ENDDO.
          CLOSE DATASET  FNAME.
        ENDIF.
      ENDIF.
    ENDFORM.  " upload_file_app
    *&      Form  get_podata
          text
    form get_podata.
      select *
      into table t_update
      from zvtls_sap
      for all entries in t_flatfile_vtls1
       where itemvtls = t_flatfile_vtls1-item
      and povtls = t_flatfile_vtls1-po.
      sort t_update by posap itemsap.
      loop at t_update.
        at new posap.
          t_poheader-po = t_update-posap.
          append t_poheader.
          clear t_poheader.
        endat.
        t_poitem-po = t_update-posap.
        t_poitem-item = t_update-itemsap.
        append t_poitem.
        clear t_poitem.
        t_update-paedt = sy-datum.
        t_update-loekz = 'X'.
        modify t_update.
      endloop.
      modify zvtls_sap from table t_update.
    endform.                    "get_podata
    *&      Form  move_to_bapi
          text
    form move_to_bapi.
      t_bapi_poheader-po_number = t_poheader-po.
      CLEAR t_bapi_poheaderx.
      PERFORM fill_check_structure USING c_bapimepoheaderx
                                         c_t_bapi_poheader
                                         c_t_bapi_poheaderx
                                         c_x.
      refresh : t_bapi_poitem,t_bapi_poitemx.
      loop at t_poitem where po = t_poheader-po.
        clear t_bapi_poitem.
        t_bapi_poitem-po_item = t_poitem-item.
        t_bapi_poitem-delete_ind = 'X'.
        CLEAR t_bapi_poitemx.
        PERFORM fill_check_structure USING c_bapimepoitem
                                           c_t_bapi_poitem
                                           c_t_bapi_poitemx
                                           c_x.
        t_bapi_poitemx-po_item = t_poitem-item.
        t_bapi_poitemx-po_itemx = c_x.
        APPEND t_bapi_poitem.
        APPEND t_bapi_poitemx.
        clear t_bapi_poitem.
        clear t_bapi_poitemx.
      endloop.
    endform.                    "move_to_bapi
    *&      Form  call_bapi
          This form Routine is used to commit the data records
    FORM call_bapi .
      DATA : l_msgty      TYPE c,
             l_msgid(2)   TYPE c,
             l_msgno(3)   TYPE c,
             l_msgtx(100) TYPE c,
             l_errflag    TYPE c.
      CLEAR: t_bapireturn.
      REFRESH: t_bapireturn.
      *CALL FUNCTION 'BAPI_PO_CHANGE'*
        EXPORTING
          PURCHASEORDER = T_POHEADER-PO
          POHEADER      = T_BAPI_POHEADER
          POHEADERX     = T_BAPI_POHEADERX
        TABLES
          RETURN        = T_BAPIRETURN
          POITEM        = T_BAPI_POITEM
          POITEMX       = T_BAPI_POITEMX.
      READ TABLE t_bapireturn WITH KEY type = c_err TRANSPORTING NO FIELDS.
      IF sy-subrc NE 0.
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            wait = c_x.
      ENDIF.
    *C-- Write messages
      WRITE: / 'PO Number', t_poheader-po.
      clear : t_update,w_povtls.
      read table t_update with key posap = t_poheader-po.
      w_povtls = t_update-povtls.
      CLEAR l_errflag.
      LOOP AT t_bapireturn.
        CLEAR: l_msgty, l_msgid, l_msgno, l_msgtx.
        l_msgty = t_bapireturn-type.
        l_msgid = t_bapireturn-id.
        l_msgno = t_bapireturn-number.
        l_msgtx = t_bapireturn-message.
        WRITE: / l_msgty, l_msgid, l_msgno, l_msgtx.
        if l_msgtx cs t_poheader-po.
          w_count = w_count + 1.
          loop at t_update.
            if sy-tabix = w_count.
              t_message-item = t_update-itemvtls.
            endif.
          endloop.
        endif.
        t_message-msgty = l_msgty.
        t_message-msgid = l_msgid.
        t_message-msgno = l_msgno.
        t_message-msgtx = l_msgtx.
        t_message-po = w_povtls.
        append t_message.
        clear t_message.
        IF l_msgty EQ c_err.
          l_errflag = c_x.
        ENDIF.    " l_msgty EQ 'E'
      ENDLOOP.
      ULINE.
      IF l_errflag NE c_x.
        w_success = w_success + 1.
      ENDIF.    " l_errflag NE C_X
    endform.                    "call_bapi
    *&      Form  fill_check_structure
          This form Routine will check whether the specified structure
          exist/active
    FORM fill_check_structure  USING    fp_tabname TYPE any
                                        fp_orgtabname TYPE any
                                        fp_chktabname TYPE any
                                        fp_check TYPE c.
      FIELD-SYMBOLS : <fs_chk>, <fs_org>.
      DATA:    l_char1(61)  TYPE c,
               l_char2(61)  TYPE c.
      DATA:    BEGIN OF tl_nametab OCCURS 60.
              INCLUDE STRUCTURE x031l.
      DATA:    END OF tl_nametab.
      REFRESH tl_nametab.
      CALL FUNCTION 'RFC_GET_NAMETAB'
        EXPORTING
          tabname          = fp_tabname
        TABLES
          nametab          = tl_nametab
        EXCEPTIONS
          table_not_active = 1
          OTHERS           = 2.
      IF sy-subrc <> 0.
        CLEAR tl_nametab.
      ENDIF.
      LOOP AT tl_nametab.
        CLEAR: l_char1, l_char2.
        CONCATENATE fp_chktabname c_hyp tl_nametab-fieldname INTO l_char1.
        ASSIGN (l_char1) TO <fs_chk>.
        CONCATENATE fp_orgtabname c_hyp tl_nametab-fieldname INTO l_char2.
        ASSIGN (l_char2) TO <fs_org>.
        IF <fs_org> IS NOT INITIAL.
          <fs_chk> = fp_check.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " fill_check_structure
    *&      Form  STORE_MESSAGES
          text
         -->FP_MESSAGEStext
    FORM STORE_MESSAGES TABLES FP_MESSAGES STRUCTURE T_MESSAGE.
      DATA: wl_output_data LIKE t_MESSAGE.
      DATA: l_catstr TYPE string.
      DATA: l_fieldvalue TYPE string.
      DATA: l_index TYPE i VALUE 1.
      DATA: L_FNAME(60).
      FIELD-SYMBOLS <fs>.
      CLEAR l_catstr.
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = '/USR/SAP/VTLS/POCHANGE/LOG'
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = L_FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = '0'.
        IF fp_messages[] IS NOT INITIAL.
          OPEN DATASET L_FNAME FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
          IF sy-subrc NE 0.
            LEAVE LIST-PROCESSING.
          ELSE.
            LOOP AT fp_messages INTO wl_output_data.
              DO.
               ASSIGN COMPONENT l_index OF STRUCTURE wl_output_data TO <fs>.
                IF sy-subrc <> 0.
                  EXIT.
                ENDIF.
                MOVE <fs> TO l_fieldvalue.
                IF l_catstr IS NOT INITIAL.
                  CONCATENATE l_catstr l_fieldvalue INTO l_catstr SEPARATED
                  BY con_tab.
                ELSE.
                  MOVE l_fieldvalue TO l_catstr.
                ENDIF.
                l_index = l_index + c_1.
                CLEAR l_fieldvalue.
                CLEAR <fs>.
              ENDDO.
              l_index = c_1.
              TRANSFER l_catstr TO L_FNAME .
              CLEAR wl_output_data.
              CLEAR l_catstr.
            ENDLOOP.
            CLOSE  DATASET L_FNAME.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDFORM.                    "STORE_MESSAGES

  • PO line item delete with the customised message type

    Hi,
    My requirement is...In a Multiple line item PO if all the line items are deleted than it should not send any print to the vendor though the message option is set to Print immediatelly(NAST-VSZTP = 4).
    These message type are customised output type like ZNEU.
    I have tried to stop the print program which is calling the smartfrom.I am successful in stopping it by taking the deletion flag from the table ekpo table.But not able to make the traffic signal light to red.Because after the print program it is going to the RSNAST00 program and taking the value NAST-VSZTP = 4 and make its status to green and as well as processed.
    Can any body suggested how to change this traffic signal light to red.
    Regards,
    Partha

    Hi Raghavendra,
                           I understand that you are facing problems due to non-availibility of Header data in PROCESS_ITEM. But the same can be pulled live from the program. Sample pseudo code and reference link provided below. Hope it helps your ABAPer gain an insight.
    REF: Getting Header Data in ITEM_PROCESS
    DATA: ls_item TYPE mepoitem,
    ls_header TYPE mepoheader,
    ls_header_obj TYPE REF TO if_purchase_order_mm.
    *Get PO Header data
    CALL METHOD im_item->get_header
    RECEIVING
    re_header = ls_header_obj.
    CALL METHOD ls_header_obj->get_data
    RECEIVING
    re_data = ls_header.

  • Mass change on production order (assembly type) to put deletion flag status

    Dear all,
    I've make a mass change on production orders to settle the status DLFL through the Tcode CO78.
    Some of the production orders  are "assembly order" type. Those could not be up-dated with the DLFL because there are linked to customer order. The customers orders are closed.
    What can I do to change the status for this kind of production orders. It is necessary for me to be able to put the DLFL status in order to improve the process of production closure done each month.

    Hi kiran 
    Thanks for the response. As I cannot put deletion indicator on the Assembly order directly, Do we have to put deletion indicator on the sales order item?. If so, Can we put a deletion indicator after the sales order was delivered and invoiced. What exactly have you guys done to put deletion flag on the production order.

  • HOW TO SET DELETION FLAG TO SERVICE ENTRY SHEET ?

    Dear Experts,
    Can anybody explain how to set deletion flag to Service entry sheet created ?
    Service Entry sheet has been accepted and saved, i want to set deletion flag to the Service Entry sheet.
    Thanks in Advance

    Hi,
    Go to ML85 and give your service entry sheet no in Entry sheet data and select "cancel release" check box and give the corresponding release code and execute and save. The release gets cancelled.
    The other way is go to ML81N and give your Po and service entry sheet and click on the icon "cancel release" (reverse arrow mark) give the corresponding release code for cancellation and save. Now the service entry sheet will go to "No acceptance" mode. again go to the change mode and select the line item and delete it by clicking on delete icon.
    regards,
    Kannaiah Naidu

  • Deletion flags for equipment BOM

    Hi,
    In equipment BOM header , there are 2 fields for deletion flag :
    -one is set manually (the one on the right)
    -the other set by the system (the one on the left).
    Can someone explain to me how deletion flag indicator (on the left) work?
    Thanks,
    P.

    Hi,
    To explain this i must say first there is a difference in the Deletion Flag (Right in Header) and Deletion Indicator(Left in Header).
    In SAP term The deletion Indicator shows the item which has already been Deleted from the System and Deletion flag shows that the record has been flagged for deletion and will hence be Archieve (when, depends on the Archieving strategy followed in the company).
    To explain the affect these will have is the Deletion Indicator will not allow you to use the and will show the error as the object has been deleted and is not in the system.
    Deletion flag for BOMs
    Indicator: this BOM will be archived during the next archiving run and, if necessary, deleted from the data base.
    Where as the Deletion Flag will show that the object is ready to be archieved and is set to be deleted.
    Deletion Indicator
    Indicator showing that the BOM header or the BOM item has been deleted with reference to the change number.
    Now there is another difference in the way we can amke the objects active from deletion flag anf the deletion indicator.
    For Deletion flag you have to go to change mode and just remove or untick the deletion flag.
    For Deletion indicator you have to go to Archieve table and pull the object back in to SAP system and it will then show only the deletion flag, which can be removed by the way explained above.
    I hope this was helpful, if yes then please award points.
    Regards
    Anoop

  • Reg:purchase order header deletion flag

    hi all,
    right now in SAP PO header deletion flag has been set to X.
    so what i need is the PO should be flagged only at item level .
    how can i proceed?where can i find the deletion flag in the transaction screen?

    Hi,
    To set deletion flag at PO item, select the item and click on delete icon (a garbage bin).
    Cheers.
    ...Reward if useful.

Maybe you are looking for

  • How to display customize values in report?

    I need to be able to show certain customize values in a report portlet. Preferably just above the table of results. How do I do that? Grateful for any help... Bryan

  • Time Machine and MS Office Home Student

    I attached a new hard drive to my MacBook Pro and launched TM and let it do a full back up. Upon completion I could no longer access my MS Office Home & Student version - I got a message that MS was already in use(meaning that the license was in use

  • Disk Repair and Installation?

    Lately my Mac has been acting slow and some applications crash a lot more often then they should be. I want to give it a new clean slate but I still want to have those files. When I go to install it from the CD, under the options, it says that I can

  • Error when uploading book to Blurb from LR 4.1 and after 4.3 update

    I have been trying for over 24 hours to upload a 75 page book successfully from LR 4.1, and also after updating to LR 4.3!  I was initially able to upload to pdf format in LR 4.1, then it stopped working.  Book upload to Blurb took a very long time t

  • Connect 2 external Displays with a iMac 27''

    Hi, is there a way to connect two external Displays with a iMac 27inch. Eyefinity? Its a Radeon 5750 inside the iMac isnt it?