Update Material PO text

Hello experts,
we're maintaining purchase order text in MM02 and using this text as Material PO text in our PO's.
When changing this text in MM02 we need to update the PO text as well, but manually - and only for open PO's, not historic PO's.
Is there a way to update this text manually?
Thanks, Sebastian

When changing this text in MM02 we need to update the PO text as well, but manually - and only for open PO's, not historic PO's.
Is there a way to update this text manually?
Of course you can change the PO texts manually -> in ME22N
So there is no chance that my completed PO's are not changed afterwards by a new material text?
Hard to understand this question. If you are manually changing the POs, then all POs that you do not touch will not get an update.
But I guess your question has a totally different basis. I guess your PO texts are just referenced and not copied. In this case the POs do not have an individual text, they just have a link to the text source material master.
And if you change the material master, then it will immediatly effect ALL POs having this link.

Similar Messages

  • How to update Material PO Text

    I need to Develope a BDC to update 'PO Text' for each Material in MM02.
    I have knowledge on BDC But My Problem is -->
    In MM02 - Mostly Purchase Order Text is Coming on 11th Position {In BDC -  'MSICHTAUSW-KZSEL(11)' }
    But not necessary Always - What can I do if the sequence is diff?
    Is there anything to find the Exact position of 'Purchase Order Text'?

    Hi,
    Doing BDC for this is a bit difficult. Because the view may get different.
    In what sense you will hard cord a value . There are lot of cases in MM02.
    If you arlready done the BDC for MM02 then continue with that other you can use the BAPI : BAPI_MATERIAL_SAVEDATA.
    This BDC recording for MM02 will reflect in upgradtion also.
    With Regards,
    Sumodh.P

  • Updating Material master purchase order text -LSMW

    Dear Experts
    How can update Purchase order Text  through LSMW, while am doing recording system is not recording this field from material master
    Regards
    Ajeesh.s

    Dear Expert
    Please throw some light on this issue
    Regards
    Ajeesh.s

  • How to pass text to Material Sales text, item note, while creating a sales

    hi ,
       i tried my level best with the help of friends (SDN).
       but i am unable to reach the target.
       my requirement is to enter text into
        1) material sales text
        2) item note
        3) packing note
        4) delivery text
        5) purchase order text
        6) production memo
        in sales order using bapi. here i am submitting the code i wrote.
      kindly some one help me.
       thanks in advance
    regards,
    pavan
    <i>report  zmybapi1        .
    data : my_order_header_in like bapisdhd1 occurs 0 with header line,
           my_order_header_ix like bapisdhd1x occurs 0 with header line.
    data : my_orderitemsin like bapisditm  occurs 0 with header line,
           my_orderitemsix like bapisditmx occurs 0 with header line.
    data : my_order_partners like bapiparnr occurs 0 with header line.
    data : my_return like bapiret2 occurs 0 with header line.
    data : w_vbeln like bapivbeln-vbeln.
    data:
         my_orderschedulesin like bapischdl occurs 0 with header line,
         my_orderschedulesinx like bapischdlx occurs 0 with header line.
    data : my_orderconditionsin like bapicond occurs 0 with header line,
           my_orderconditionsinx like bapicondx occurs 0 with header line.
    <b>data : my_ordertext like bapisdtext occurs 0 with header line.</b>
    start-of-selection.
    this is to assign values to internal table my_order_header_in
      my_order_header_in-doc_type   = 'TA'.
      my_order_header_in-sales_org  = 'JNJ1'.
      my_order_header_in-distr_chan = '02'.
      my_order_header_in-division   = 'J1'.
      my_order_header_in-sales_off  = 'JNJ1'.
      my_order_header_in-purch_no_c = 'testbapipo'.
      my_order_header_in-purch_date = sy-datum.
      my_order_header_in-req_date_h = sy-datum.
      append my_order_header_in.
    this is to assign values to internal table my_orderitemsin
      my_orderitemsin-material      = '000000000000000727'.
      my_orderitemsin-plant         = 'JNJ1'.
      my_orderitemsin-target_qu     = 'EA'.
      my_orderitemsin-target_qty    = '10'.
      append my_orderitemsin.
    this is to assign values to internal table my_order_partners
      my_order_partners-partn_role = 'AG'.
      my_order_partners-partn_numb = '0000000011'.
      append my_order_partners.
      my_order_partners-partn_role = 'WE'.
      my_order_partners-partn_numb = '0000000011'.
    append my_order_partners.
    This is to assign values to internal table my_orderschedulesin
      my_orderschedulesin-itm_number = '10'.
      my_orderschedulesin-itm_number = '000010'.
      my_orderschedulesin-req_qty   = '10'.
      my_orderschedulesin-SCHED_LINE = '0001'.
      append my_orderschedulesin.
    *This is to assign values to internal table my_orderconditionin
      my_orderconditionsin-itm_number = '000010'.
      my_orderconditionsin-cond_type = 'ZPR1'.
      my_orderconditionsin-cond_st_no = ''.
      my_orderconditionsin-cond_count = '1'.
      my_orderconditionsin-cond_value = '40'.
      my_orderconditionsin-cond_p_unt = '1'.
      my_orderconditionsin-currency = 'INR'.
      append my_orderconditionsin.
    <b> my_ordertext-itm_number = '00010'.
      my_ordertext-text_id = '0002'.
      my_ordertext-langu = 'EN'.
      my_ordertext-langu_iso = 'EN'.
      my_ordertext-text_line = 'This is for item note'.
      my_ordertext-format_col = '*'.
      my_ordertext-function = '009'.
    *</b>  <b>append my_ordertext.</b>
      my_order_header_ix-updateflag = 'I'.
      my_order_header_ix-doc_type   = 'X'.
      my_order_header_ix-sales_org  = 'X'.
      my_order_header_ix-distr_chan = 'X'.
      my_order_header_ix-division   = 'X'.
      my_order_header_ix-sales_off  = 'X'.
      my_order_header_ix-purch_no_c = 'X'.
      my_order_header_ix-purch_date = 'X'.
      my_order_header_ix-req_date_h = 'X'.
      append my_order_header_ix.
      my_orderitemsix-updateflag    = 'I'.
      my_orderitemsix-material      = 'X'.
      my_orderitemsix-target_qty    = 'X'.
      my_orderitemsix-plant         = 'X'.
      my_orderitemsix-target_qu     = 'X'.
      append my_orderitemsix.
      my_orderschedulesinx-updateflag = 'I'.
      my_orderschedulesinx-sched_line = '0001'.
      my_orderschedulesinx-req_qty    = 'X'.
      append my_orderschedulesinx.
    my_orderconditionsinx-itm_number = '000010'.
      my_orderconditionsinx-cond_type = 'ZPR1'.
      my_orderconditionsinx-cond_st_no = 'X'.
      my_orderconditionsinx-cond_count = 'X'.
      my_orderconditionsinx-updateflag = 'U'.
      my_orderconditionsinx-cond_value = 'X'.
      my_orderconditionsinx-cond_p_unt = 'X'.
      my_orderconditionsinx-currency = 'X'.
      append my_orderconditionsinx.
      call function 'BAPI_SALESORDER_CREATEFROMDAT2'
        exporting
      SALESDOCUMENTIN               =
          order_header_in               = my_order_header_in
          order_header_inx              = my_order_header_ix
      SENDER                        =
      BINARY_RELATIONSHIPTYPE       =
      INT_NUMBER_ASSIGNMENT         =
      BEHAVE_WHEN_ERROR             =
      LOGIC_SWITCH                  =
      TESTRUN                       =
      CONVERT                       = ' '
        importing
          salesdocument                 = w_vbeln
        tables
          return                        = my_return
          order_items_in                = my_orderitemsin
          order_items_inx               = my_orderitemsix
          order_partners                = my_order_partners
        ORDER_SCHEDULES_IN            =  my_orderschedulesin
         order_schedules_inx           = my_orderschedulesinx
       ORDER_CONDITIONS_IN           =  my_orderconditionsin
       ORDER_CONDITIONS_INX          =  my_orderconditionsinx
      ORDER_CFGS_REF                =
        <b>ORDER_TEXT                    = my_ordertext</b>
                 if sy-subrc ne 0.
        write: my_return-message, my_return-number, my_return-type.
      else.
         call function 'BAPI_TRANSACTION_COMMIT'
         EXPORTING
           WAIT          =
         IMPORTING
           RETURN        =
          write: my_return-message, my_return-number, my_return-type.</i>

    hi prashant,
        i tried the save_text but , i am unable find the exact value which i have to enter for the field tdobject.
    this is updated program as per u r instruction.
    <b>Text object not found</b>
    the code now is
    <b>report  zmybapi1        .
    data : my_order_header_in like bapisdhd1 occurs 0 with header line,
           my_order_header_ix like bapisdhd1x occurs 0 with header line.
    data : my_orderitemsin like bapisditm  occurs 0 with header line,
           my_orderitemsix like bapisditmx occurs 0 with header line.
    data : my_order_partners like bapiparnr occurs 0 with header line.
    data : my_return like bapiret2 occurs 0 with header line.
    data : w_vbeln like bapivbeln-vbeln.
    data:
         my_orderschedulesin like bapischdl occurs 0 with header line,
         my_orderschedulesinx like bapischdlx occurs 0 with header line.
    data : my_orderconditionsin like bapicond occurs 0 with header line,
           my_orderconditionsinx like bapicondx occurs 0 with header line.
    data : my_ordertext like bapisdtext occurs 0 with header line.
    data : my_header like thead occurs 0 with header line.
    data : my_tline like tline occurs 0 with header line.
    start-of-selection.
    this is to assign values to internal table my_order_header_in
      my_order_header_in-doc_type   = 'TA'.
      my_order_header_in-sales_org  = 'JNJ1'.
      my_order_header_in-distr_chan = '02'.
      my_order_header_in-division   = 'J1'.
      my_order_header_in-sales_off  = 'JNJ1'.
      my_order_header_in-purch_no_c = 'testbapipo'.
      my_order_header_in-purch_date = sy-datum.
      my_order_header_in-req_date_h = sy-datum.
      append my_order_header_in.
    this is to assign values to internal table my_orderitemsin
      my_orderitemsin-material      = '000000000000000727'.
      my_orderitemsin-plant         = 'JNJ1'.
      my_orderitemsin-target_qu     = 'EA'.
      my_orderitemsin-target_qty    = '10'.
      append my_orderitemsin.
    this is to assign values to internal table my_order_partners
      my_order_partners-partn_role = 'AG'.
      my_order_partners-partn_numb = '0000000011'.
      append my_order_partners.
      my_order_partners-partn_role = 'WE'.
      my_order_partners-partn_numb = '0000000011'.
    append my_order_partners.
    This is to assign values to internal table my_orderschedulesin
      my_orderschedulesin-itm_number = '10'.
      my_orderschedulesin-itm_number = '000010'.
      my_orderschedulesin-req_qty   = '10'.
      my_orderschedulesin-SCHED_LINE = '0001'.
      append my_orderschedulesin.
    *This is to assign values to internal table my_orderconditionin
      my_orderconditionsin-itm_number = '000010'.
      my_orderconditionsin-cond_type = 'ZPR1'.
      my_orderconditionsin-cond_st_no = ''.
      my_orderconditionsin-cond_count = '1'.
      my_orderconditionsin-cond_value = '40'.
      my_orderconditionsin-cond_p_unt = '1'.
      my_orderconditionsin-currency = 'INR'.
      append my_orderconditionsin.
    my_ordertext-doc_number = '0000008632'.
      my_ordertext-itm_number = '00010'.
      my_ordertext-text_id = '0002'.
      my_ordertext-langu = 'EN'.
      my_ordertext-langu_iso = 'EN'.
      my_ordertext-text_line = 'This is for item note'.
      my_ordertext-format_col = '*'.
      my_ordertext-function = '009'.
      append my_ordertext.
      my_order_header_ix-updateflag = 'I'.
      my_order_header_ix-doc_type   = 'X'.
      my_order_header_ix-sales_org  = 'X'.
      my_order_header_ix-distr_chan = 'X'.
      my_order_header_ix-division   = 'X'.
      my_order_header_ix-sales_off  = 'X'.
      my_order_header_ix-purch_no_c = 'X'.
      my_order_header_ix-purch_date = 'X'.
      my_order_header_ix-req_date_h = 'X'.
      append my_order_header_ix.
      my_orderitemsix-updateflag    = 'I'.
      my_orderitemsix-material      = 'X'.
      my_orderitemsix-target_qty    = 'X'.
      my_orderitemsix-plant         = 'X'.
      my_orderitemsix-target_qu     = 'X'.
      append my_orderitemsix.
      my_orderschedulesinx-updateflag = 'I'.
      my_orderschedulesinx-sched_line = '0001'.
      my_orderschedulesinx-req_qty    = 'X'.
      append my_orderschedulesinx.
    my_orderconditionsinx-itm_number = '000010'.
    my_orderconditionsinx-cond_type = 'ZPR1'.
    my_orderconditionsinx-cond_st_no = 'X'.
    my_orderconditionsinx-cond_count = 'X'.
    my_orderconditionsinx-updateflag = 'U'.
    my_orderconditionsinx-cond_value = 'X'.
    my_orderconditionsinx-cond_p_unt = 'X'.
    my_orderconditionsinx-currency = 'X'.
    append my_orderconditionsinx.
      call function 'BAPI_SALESORDER_CREATEFROMDAT2'
        exporting
      SALESDOCUMENTIN               =
          order_header_in               = my_order_header_in
          order_header_inx              = my_order_header_ix
      SENDER                        =
      BINARY_RELATIONSHIPTYPE       =
      INT_NUMBER_ASSIGNMENT         =
      BEHAVE_WHEN_ERROR             =
      LOGIC_SWITCH                  =
      TESTRUN                       =
      CONVERT                       = ' '
        importing
          salesdocument                 = w_vbeln
        tables
          return                        = my_return
          order_items_in                = my_orderitemsin
          order_items_inx               = my_orderitemsix
          order_partners                = my_order_partners
        ORDER_SCHEDULES_IN            =  my_orderschedulesin
          order_schedules_inx           = my_orderschedulesinx
      ORDER_CONDITIONS_IN           =  my_orderconditionsin
      ORDER_CONDITIONS_INX          =  my_orderconditionsinx
      ORDER_CFGS_REF                =
        ORDER_TEXT                    = my_ordertext
                 if sy-subrc ne 0.
        write: my_return-message, my_return-number, my_return-type.
      else.
         call function 'BAPI_TRANSACTION_COMMIT'
         EXPORTING
           WAIT          =
         IMPORTING
           RETURN        =
          write: my_return-message, my_return-number, my_return-type.
    my_header-tdobject = ''.
    my_header-tdname = ' '.
    my_header-tdid = '0002'.
    my_header-tdspras = 'EN'.
    append my_header.
    my_tline-tdformat = '*'.
    my_tline-tdline = 'This is for item note'.
    append my_tline.
    call function 'SAVE_TEXT'
      exporting
      CLIENT                = SY-MANDT
        header                = my_header
      INSERT                = ' '
      SAVEMODE_DIRECT       = ' '
      OWNER_SPECIFIED       = ' '
      LOCAL_CAT             = ' '
    IMPORTING
      FUNCTION              =
      NEWHEADER             =
      tables
        lines                 = my_tline
    EXCEPTIONS
      ID                    = 1
      LANGUAGE              = 2
      NAME                  = 3
      OBJECT                = 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.
    endif.</b>
      thanks in advance
    regards,
    pavan

  • Update: Purchase order text

    Hi
    We would like to use the current long text of a material and update the purchase order text programatically with the same data.
    How can i create the P.O. text without using BDC updates?

    What text do you want to load ( I mean header text or item text )
    see the example to save text
    report ZMPPC016
           no standard page heading
           line-size 120.
    Constants
    constants : c_r type c value 'R', " PLNTY Value
                C_X TYPE C VALUE 'X', " Value for dynbegin.
                c_tcode like tstc-tcode value 'CA22', " Transaction code
                c_mode(1) type c value 'A', " BDC Mode
                c_tdformat type tline-tdformat value '*',"Tag column
                c_tdid type thead-tdid value 'PLPO', " Text ID
                c_tdform type thead-tdform value 'SYSTEM'." Form name
    Variables
    data : v_date like sy-datum, " date
           v_date1(4) type c,
           v_date2(2) type c,
           v_date3(2) type c,
           TNAME LIKE THEAD-TDNAME,
           v_mandt(3) type c,
           v_matnr(18) type c,
           flag type c.
    Internal table for file
    data : begin of t_file occurs 0,
           matnr(18) type c, " Material Number
           werks(4) type c,  " Plant
           vornr(4) type c,  " Operation Number
           tseq(3) type n,   " Line number in the long text
           text1(70) type c, " Long text
           plnal(2) type n,  " Group counter
           end of t_file.
    data : begin of t_text occurs 0,
           matnr(18) type c, " Material Number
           werks(4) type c,  " Plant
           plnal(2) type n,  " Group counter
           vornr(4) type c,  " Operation Number
           tseq(3) type n,   " Line number in the long text
           text1(70) type c, " Long text
           end of t_text.
    Internal table for MAPl
    data : begin of t_mapl occurs 0,
           plnnr like mapl-plnnr,
           end of t_mapl.
      Internal Table for PLAS and PLPO Table
    data : begin of t_plpo occurs 0,
           mandt like plpo-mandt,
           plnty like plpo-plnty,
           plnnr like plpo-plnnr,
           plnkn like plpo-plnkn,
           zaehl like plpo-zaehl,
           end of t_plpo.
    data t_long like tline occurs 0 with header line.
    Work area for t_text Internal table
    data : wa_text like t_text.
    data:  t_header like thead.         " long text
    Internal table for BDCDATA Structure
    data : begin of itab_bdc_tab occurs 0.
            include structure bdcdata.
    data : end of itab_bdc_tab.
    Selection-screen
    selection-screen : begin of block blk with frame .
    parameter : P_file like rlgrap-filename obligatory.
    selection-screen : end of block blk.
    initialization.
      p_file = 'C:\My Documents\InputFile.txt'.
    at selection-screen on value-request for p_file.
    F4 value for file
      perform file_get.
    start-of-selection.
    Get file data into Internal Table.
      perform get_data.
      sort t_text by matnr werks  vornr  plnal tseq.
    Save the long text into CA22 Transaction
      perform load_data.
    top-of-page.
      CALL FUNCTION 'Z_HEADER'
    EXPORTING
       FLEX_TEXT1       =
       FLEX_TEXT2       =
       FLEX_TEXT3       =
      skip 1.
    *&      Form  file_get
          F4 Value for file
    FORM file_get.
      CALL FUNCTION 'WS_FILENAME_GET'
           EXPORTING
                DEF_PATH         = 'C:\Temp\'
                MASK             = ',.,..'
                MODE             = 'O'
                TITLE            = 'Select File'(007)
           IMPORTING
                FILENAME         = P_file
           EXCEPTIONS
                INV_WINSYS       = 1
                NO_BATCH         = 2
                SELECTION_CANCEL = 3
                SELECTION_ERROR  = 4
                OTHERS           = 5.
    ENDFORM.                    " file_get
    *&      Form  get_data
          Get file data into Internal Table.
    FORM get_data.
      CALL FUNCTION 'WS_UPLOAD'
           EXPORTING
                FILENAME                = p_file
                FILETYPE                = 'DAT'
           TABLES
                DATA_TAB                = t_file
           EXCEPTIONS
                CONVERSION_ERROR        = 1
                FILE_OPEN_ERROR         = 2
                FILE_READ_ERROR         = 3
                INVALID_TYPE            = 4
                NO_BATCH                = 5
                UNKNOWN_ERROR           = 6
                INVALID_TABLE_WIDTH     = 7
                GUI_REFUSE_FILETRANSFER = 8
                CUSTOMER_ERROR          = 9
                OTHERS                  = 10.
      if sy-subrc eq 0.
        sort t_file by matnr werks plnal vornr tseq.
        delete t_file where matnr = ''.
        loop at t_file.
       Get the material number from tables ZMSMI_FERR_RAW,
       ZMSMI_SNAP_RAW and ZMSMI_SIMP_RAW
          perform get_matnr.
          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
               EXPORTING
                    INPUT  = t_file-vornr
               IMPORTING
                    OUTPUT = t_file-vornr.
          move : t_file-matnr to t_text-matnr,
                 t_file-werks to t_text-werks,
                 t_file-vornr to t_text-vornr,
                 t_file-tseq  to t_text-tseq,
                 t_file-text1 to t_text-text1,
                 t_file-plnal to t_text-plnal.
          append t_text.
          clear t_text.
        endloop.
      else.
        WRITE: / 'Error reading input file'.
        stop.
      endif.
    ENDFORM.                    " get_data
    *&      Form  call_bdc
          BDC Script for CA22 Transaction
    FORM call_bdc.
    Screen 1010
      perform bdc_screen using  'SAPLCPDI'     '1010'.
      perform bdc_field  using  'BDC_OKCODE'   '=VOUE'.
      perform bdc_field  using  'RC27M-MATNR'   SPACE.
      perform bdc_field  using  'RC27M-WERKS'   SPACE.
      perform bdc_field  using  'RC271-VBELN'   SPACE.
      perform bdc_field  using  'RC271-POSNR'   SPACE.
      perform bdc_field  using  'RC271-PLNNR'   T_PLPO-PLNNR.
      perform bdc_field  using  'RC271-AENNR'   SPACE.
      clear :  v_date,
               v_date1,
               v_date2,
               v_date3.
      v_date1 = sy-datum+0(4).
      v_date2 = sy-datum+4(2).
      v_date3 = sy-datum+6(2).
      concatenate v_date2 v_date3 v_date1 into v_date.
      perform bdc_field  using  'RC271-STTAG'  v_date .
      perform bdc_field  using  'RC271-REVLV'   SPACE.
      perform bdc_field  using  'RC271-WERKS'   SPACE.
      perform bdc_field  using  'RC271-PLNAL'   WA_TEXT-PLNAL.
      perform bdc_field  using  'RC271-STATU'   SPACE.
      perform bdc_field  using  'RC271-VAGRP'   SPACE.
      perform bdc_field  using  'RC271-PROFIDNETZ'   SPACE.
    Screen 5400
      perform bdc_screen using  'SAPLCPDI'     '5400'.
      perform bdc_field  using  'BDC_OKCODE'   '=OSEA'.
    Screen 1010
      perform bdc_screen using  'SAPLCP02'     '1010'.
      perform bdc_field  using  'BDC_OKCODE'   '=ENT1'.
      perform bdc_field  using  'RC27H-VORNR'  WA_TEXT-VORNR.
    Screen 5400
      perform bdc_screen using  'SAPLCPDI'     '5400'.
      perform bdc_field  using  'BDC_OKCODE'   '=LTXT'.
      perform bdc_field  using  'RC27X-FLG_SEL(01)'  C_X.
    Screen 1100
      perform bdc_screen using  'SAPLSTXX'     '1100'.
      perform bdc_field  using  'BDC_OKCODE'   '=XEIN'.
    Screen 0999
      perform bdc_screen using  'SAPLWB_CUSTOMIZING'     '0999'.
      perform bdc_field  using  'BDC_OKCODE'   '=CONT'.
      PERFORM BDC_FIELD  USING  'RSEUMOD-GRA_EDITOR' SPACE.
    Screen 1100
      perform bdc_screen using  'SAPLSTXX'     '1100'.
      perform bdc_field  using  'BDC_CURSOR'   'RSTXT-TXPARGRAPH'.
      perform bdc_field  using  'BDC_OKCODE'   '=TXBA'.
      perform bdc_field  using  'RSTXT-TXPARGRAPH(03)'   '*'.
      perform bdc_field  using  'RSTXT-TXLINE(03)'
    Screen 5400
      perform bdc_screen using  'SAPLCPDI'     '5400'.
      perform bdc_field  using  'BDC_OKCODE'   '=BU'.
      call transaction c_tcode
           using itab_bdc_tab mode 'N'
           update 'S'.
      refresh itab_bdc_tab.
      if sy-subrc eq 0 and sy-msgty ne 'E'.
        v_mandt = t_plpo-mandt.
        CONCATENATE v_mandt
                    t_plpo-plnty
                    t_plpo-plnnr
                    t_plpo-plnkn
                    t_plpo-zaehl into tname.
        commit work.
        CALL FUNCTION 'DELETE_TEXT'
          EXPORTING
          CLIENT                  = SY-MANDT
            ID                    = c_tdid
            LANGUAGE              = 'E'
            NAME                  =  TNAME
            OBJECT                = 'ROUTING'
            SAVEMODE_DIRECT       = 'X'
         TEXTMEMORY_ONLY       = ' '
         LOCAL_CAT             = ' '
         EXCEPTIONS
           NOT_FOUND             = 1
           OTHERS                = 2
        if sy-subrc ne 0.
          write:/3  wa_text-matnr,24 wa_text-werks,
                    30 t_mapl-plnnr,44 wa_text-plnal,48 wa_text-vornr,
                    60 ' -',
                    67 'Error Deleting Existing Long Text'.
        endif.
      else.
        write:/3  wa_text-matnr,24 wa_text-werks,
                       30 t_mapl-plnnr,44 wa_text-plnal,48 wa_text-vornr,
                       60 ' -',
                       67 'Error Executing BDC'.
      endif.
    ENDFORM.                    " call_bdc
    *&      Form  bdc_screen
          BDC Script for Screen fields
         -->P_PROG   Program name
         -->P_SCRN   Screen Number
    FORM bdc_screen USING    p_prog
                             p_scrn.
      clear itab_bdc_tab.
      itab_bdc_tab-program = p_prog.
      itab_bdc_tab-dynpro = p_scrn.
      itab_bdc_tab-dynbegin = c_x.
      append itab_bdc_tab.
    ENDFORM.                    " bdc_screen
    *&      Form  bdc_field
          BDC Script for Screen fileds
         -->P_NAM   Field name
         -->P_VAL   Field value
    FORM bdc_field USING    p_nam
                            p_val.
      clear itab_bdc_tab.
      itab_bdc_tab-fnam = p_nam.
      itab_bdc_tab-fval = p_val.
      append itab_bdc_tab.
    ENDFORM.                    " bdc_screen
    *&      Form  load_data
          Save the long text into CA22 Transaction
    FORM load_data.
      loop at t_text.
        move t_text to wa_text.
        at new vornr.
    Read the data in MAPL Table
          select single plnnr from mapl into t_mapl-plnnr
                                 where matnr  = wa_text-matnr
                                 and   werks  = wa_text-werks
                                 and   plnty  = c_r
                                 and   loekz  = space.
          if sy-subrc eq 0.
    Read the data from PLAS and PLPO Table
            select SINGLE  a~mandt
                    a~plnty
                    a~plnnr
                    a~plnkn
                    a~zaehl into  t_plpo
                   from plpo as a inner join plas as b on aplnty = bplnty
                                                      and aplnnr = bplnnr
                                                      and aplnkn = bplnkn
                    where b~plnty = c_r
                    and   b~plnnr = t_mapl-plnnr
                    and   b~plnal = wa_text-plnal
                    and   b~loekz = space
                    and   a~vornr = wa_text-vornr
                    and   a~loekz = space.
            if sy-subrc eq 0.
              perform call_bdc.
            else.
            flag = 'X'.
              write:/3  wa_text-matnr,24 wa_text-werks,
                     30 t_mapl-plnnr,44 wa_text-plnal,48 wa_text-vornr,
                     60 ' -',
                     67 'Matching routing group\Operation not found'.
              continue.
            endif.
          else.
            flag = 'X'.
            write:/3 wa_text-matnr,24 wa_text-werks,
                     40 ' -',
                     45 'Material Does not Exists or Material',
                     82 'not Available in MAPL Table'.
            continue.
          endif.
        endat.
        if flag ne 'X'.
          t_long-tdline = wa_text-text1.
          t_long-tdformat = c_tdformat.
          append t_long.
        endif.
        at end of vornr.
          if flag ne 'X'.
            v_mandt = t_plpo-mandt.
            CONCATENATE v_mandt
                      t_plpo-plnty
                      t_plpo-plnnr
                      t_plpo-plnkn
                      t_plpo-zaehl into tname.
            T_HEADer-TDOBJECT = 'ROUTING'.
            t_HEADer-TDNAME   = tname.
            T_HEADer-TDID     = c_tdid.
            t_header-tdform   = c_tdform.
            T_HEADer-TDSPRAS  = 'E'.
    Save the text
            CALL FUNCTION 'SAVE_TEXT'
              EXPORTING
                CLIENT                = SY-MANDT
                HEADER                = t_header
                SAVEMODE_DIRECT       = 'X'
         OWNER_SPECIFIED       = ' '
         LOCAL_CAT             = ' '
       IMPORTING
         FUNCTION              =
         NEWHEADER             =
              TABLES
                LINES                 = t_long
             EXCEPTIONS
               ID                    = 1
               LANGUAGE              = 2
               NAME                  = 3
               OBJECT                = 4
               OTHERS                = 5
            if sy-subrc eq 0.
              CALL FUNCTION 'COMMIT_TEXT'
                   EXPORTING
                        OBJECT   = t_header-TDOBJECT
                        NAME     = t_header-TDNAME
                        ID       = t_header-TDID
                        LANGUAGE = t_header-TDSPRAS.
              write:/3   wa_text-matnr,24 wa_text-werks,
                         30 t_mapl-plnnr,44 wa_text-plnal,48 wa_text-vornr,
                         60 ' -',
                         67 'Long Text Loaded Successfully'.
            else.
              write:/3   wa_text-matnr,24 wa_text-werks,
                         30 t_mapl-plnnr,44 wa_text-plnal,48 wa_text-vornr,
                         60 ' -',
                         67 'Error Uploading Long Text'.
            endif.
            refresh t_long.
            else.
            write:/3 wa_text-matnr, 24 wa_text-werks,
                   45 'Long text not uploaded'.
            clear flag.
           endif.
          endat.
        endloop.
      ENDFORM.                    " load_data
    *&      Form  get_matnr
          Get the material number from tables ZMSMI_FERR_RAW,
    FORM get_matnr.
      clear v_matnr.
      case t_file-werks.
        when '0101'.
          select single cmatnr from zmsmi_simp_raw
                 into v_matnr  where matnr = t_file-matnr.
         if sy-subrc eq 0.
          if not v_matnr is initial.
            clear t_file-matnr.
            t_file-matnr = v_matnr.
          endif.
        when '0103'.
          select single cmatnr from zmsmi_ferr_raw
                 into v_matnr  where matnr = t_file-matnr.
         if sy-subrc eq 0.
          if not v_matnr is initial.
            clear t_file-matnr.
            t_file-matnr = v_matnr.
          endif.
        when '0102' or '0110' or '0111' or '0112' or '0113'
             or '0114' or '0115' or '0116' or '0117'.
          select single cmatnr from zmsmi_snap_raw
                 into v_matnr  where matnr = t_file-matnr.
         if sy-subrc eq 0.
          if not v_matnr is initial.
            clear t_file-matnr.
            t_file-matnr = v_matnr.
          endif.
      endcase.
    ENDFORM.                    " get_matnr
    Reward Points if it is helpful
    Thanks
    Seshu

  • How can I update material in iw42?

    Hi experts,
    I need BAPI or Function to update material in transaction iw42.
    Thanks'
    Tatiana.

    Hi,
    I believe you could have search in Forum only for this.......
    use BAPI_ALM_CONF_CREATE and then BAPI_TRANSACTION_COMMIT
    Refer:
    Long text Indicator for IW41/IW42/IW43 (Order confirmations)

  • Material Master Text Load Error

    Hello Everyone,
    I am  trying to load material master text. I am getting a data load error. Here is the error message.
    Error Message:; Record filtered in advance as error records with the same key exist.
    When i checked the longtext for that error, i got this info.
    Diagnosis
         The existing DTP requires a serialized update because fields are updated
         non-commutatively during the processing run (for example, MOVE).
         Therefore all new data records that have the same semantic key as
         incorrect records that have not yet been corrected in earlier requests
         or earlier data packages of the same request, are filtered out after the
         extraction in a special step. In this way the system ensures that
         incorrect data records are not repeated for your changes, which may not
         contain errors themselves.
    System Response
         The data record is not updated but is written to an error stack.
    Procedure
         Correct all incorrect data records and update them using an error DTP.
    I did not understand the diagnosis message.  If anyone could help me out, that would be helpful.
    Thanks,
    Lasya.

    Hi Lasya,
    If there are records in error stack and DTP is executed the next time the record keys are compared to the records in the error stack and all records which are listed in the error stack are filtered out and will not be sent to the master data update.
    So you have to delete the entire DTP which also deletes the error stack or you have to correct the records in the error stack maintenance and then update the records from the error stack separately via an error stack DTP into the data target.
    Regarding to the records in the "error stack", the 'error stack' button in the DTP monitor only shows data related to this request. If you want to view the whole error stack including all requests for a certain DTP, you have to call the error stack from the DTP maintenance.
    If you decide to delete the error stack for the DTP. Please make sure you do it from the DTP maintenance and not the DTP equest.
    Usually the error stack can be deleted by removing the incorrect requests from the data target. The other possibility is to delete and recreate the whole DTP.
    Rgds,
    Colum

  • Update material doc.num in assignment field of GR/IR line item of a/c doc

    HI Experts,
    please tell me the solution for my problem
    My requirement : Transaction is : MIGO
    Before posting of material document, update material document number in assignment field of GR/IR line item of accounting document (WE) at number commitment stage
    Update MKPF-MBLNR (Material Document Number) in BSEG-ZUONR
    but already i tried AC_DOCUMENT i got a problem .
    What i did,
    first use MB_DOCUMENT_BADI with method
    mb_document_before_update.
    here i tried to get the material document and export into memory
    after use AC_DOCUMENT With method
    change_after_check.
    here Import the material document doc num and pass it to Assignment field in
    but it is not working
    when i debug first trigger the AC_DOCUMENT And then it goes to MB_DOCUMENT_BADI
    Plese help me regarding this.
    Moderator message: please open only one thread per issue.
    Edited by: Thomas Zloch on Feb 9, 2012

    Hi,
    Thanks, I will check the same. Well, I will be clearing the documents with reference to MIGO number itself. When I do my delivery chrgs migo, that number I need to be populated in my line item's assignment field. Not only that but I the same number should get populated in the delivery charges miro. Since my miro is with ref to PO it becomes difficult to fetch the field.
    Plz let me know if you can help me on this as well.
    Thanks,
    Priyanka.

  • How to update the sales text in the Sales Order.

    Dear all,
    I want to Update the sales text in the Sales Order. I used the "CREATE_TEXT" but i couldn't update using it.
    Can u please guide me, how to use the Function Module to update the sales Order line item text values.
    Thank U
    Uwanthi

    HI
    Check this link
    User Exit to update Sales order text (Terms of delivery) on saving it
    Regards,
    Krishna

  • Material item text not appearing in PO Print Preview

    Hi experts,
    We have created a new PO type .  We have assigned it with PO text via Spro>Purchasing>Purchase Order > Message > Text for messages > define text for purchase order
    Maintained text for document header
    Maintained  text for document item
    But still in Purchase Order , the material PO text at item level , is not appearing at the time of print preview / print out.
    Please suggest .
    Regards,
    ( Rajneesh Gulati )

    If I understand correctly, you want to copy the purchase order text from the material master directly into the PO's for this material.
    I got the same problem; text appears in PO item text, but doesn't appear on print preview.
    => check your forms first
    => if you can't find an error here, check the copying control in
    SPRO -> Materials Management -> Purchasing -> Purchase Order -> Texts for purchase orders -> Define copying rules for item texts
    go to the text linkages of the text type that you want to see appearing
    => make sure that the entries with source object 'material master' have the Fix value (blank) rather than N or * (if you see the text appearing in the PO but not on the print out, this means that this setting is currently set on *)
    Hope this helps

  • Problem in using FM READ_TEXT to read Material Sales Text.

    Hi Guys,
    I am developing a Customer Outstanding report in which I display all the invoices of a particular customer.
    I need  to read "Material Sales Text" which comes under "Item Text" tab in transaction FBL5N.
    I have used READ_TEXT in my program. I have identified the Object, and ID but I am stuck up with the Name. I dont know what Name to pass. I have tried passing the Invoice Number in "Name" but couldnt get the text.
    Request you to please help me out. Please check the below code.
    CALL FUNCTION 'READ_TEXT'
      EXPORTING
      CLIENT                        = SY-MANDT
        id                            =    '0001'
        language                      =  SY-LANGU
        name                          =  -
        object                        =  'VBBP'
      ARCHIVE_HANDLE                = 0
      LOCAL_CAT                     = ' '
    IMPORTING
      HEADER                        =
      tables
        lines                         =  tl001
    EXCEPTIONS
       ID                            = 1
       LANGUAGE                      = 2
       NAME                          = 3
       OTHERS                        = 8
    Thanks.

    *&      Form  READ_TEXT
    FORM read_text  USING    p_tdid  p_tdname
                    CHANGING p_tdline.
      DATA: it_line  TYPE STANDARD TABLE OF tline,
            wa_line  TYPE tline                  ,
            l_tdid   TYPE thead-tdid,
            l_tdname TYPE thead-tdname.
      l_tdid   = p_tdid.
      l_tdname = p_tdname.
      CALL FUNCTION 'READ_TEXT'
        EXPORTING
          id       = l_tdid
          language = 'E'
          name     = l_tdname
          object   = 'VBBP'
        TABLES
          lines    = it_line
        EXCEPTIONS
          OTHERS   = 8.
      LOOP AT it_line INTO wa_line.
        IF NOT wa_line-tdline IS INITIAL.
          p_tdline = wa_line-tdline.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " READ_TEXT

  • Background job finishes but error Error While Updating Material into Standard SAP5678

    Dear
    we run background job which finishes successfully but when we sqw logs it shows
    Error While Updating Material into Standard SAP5678
    Kindly share the reasons
    Regards

    This is an ERP Upgrade space and you should consider raising threads in the right space for prompt replies. Next time consider using SAP NetWeaver Administrator space for issues like these. Also you should consider closing your previous thread with the correct answer for future reference.
    What I see is a custom job. You should check what the job does and also the trace file of the work process and the consult with the application team or the developer for more information. Unfortunately with that screenshot there is nothing much we can advice you.
    Regards
    RB

  • I recently did the update and my text message notification was no longer working. Then I did a reset and now my locking function no longer works. What is going on???

    I recently did the update and my text message notification was no longer working. Then I did a reset and now my locking function no longer works. What is going on???

    What "locking function" are you talking about?

  • Front End Screen to Update Item Help Text

    Hello, I've been asked to create an Apex front end screen which the Administrators can access in order to update the Help Text associated to the page items within our application (Apex 4).
    I created a basic Interactive Report:
    select page_id, item_name, display_as, ITEM_HELP_TEXT from APEX_APPLICATION_PAGE_ITEMS where application_id = :APP_ID;
    I also have an edit page, which contains the page id (display only), item_name (display only), item_help_text (text field).
    Everything is working fine, except that when the Update process fires to update the help text, I get an Insufficient Privileges error message.
    Update APEX_APPLICATION_PAGE_ITEMS
    set item_help_text = :p7_item_help_text
    where item_id = :p7_item_id
    and application_id = :APP_ID;
    Just wondering, is it possible to update this APEX_APPLICATION_PAGE_ITEMS table? If not, can you please advise what the workaround would be?
    Thank you,
    Laura

    Log on as APEX_04000 user and then grant permission to your wpplication schema user. For a example if your application schema is app_user then
    Grant SELECT,UPDATE ON APEX_APPLICATION_PAGE_ITEMS  to app_user;Thanks
    * If this answer is helpfull or correct then please mark it and grant the points.

  • ABAB programm to copy material sales text from one sales org to another?

    Hi all,
    i'm searching for a ABAP programm to copy a material sales text from one sales org to another.
    Has anybody seen something like that before or has anybody an idea how to do this?
    Greetings & TIA
    strobbel

    @Narin
    I've tried to execute both code now over a new programm in the se38 and i get a error message from the first code (http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm).
    It's called:
    "BAPI_MARC1" cannot be converted to a character-type field.
    Could you help me to solve this?
    Sorry but i'm an absolutely newbie in things like ABAP and so on ...

Maybe you are looking for

  • Send button is very wide in IE (fine in FF)

    Hello All I am trying this guys code for submitting a form without page refresh using jQuery - things are going well except for (in) IE. The send button is really wide in IE but perfect in FF - I truly dont remember ever seeing this and cant find a s

  • BW can't transport DEV to PRD

    Dear All:        I am using BPC NW 7.5 SP10, and trying to transport Development to Production, but it failed. Here is the BW log. Log File:                PJ-BPCDEV01\sapmnt\trans\log\TBDR900505.TBP Execution of programs after import (XPRA) Transpor

  • HT4623 My iphone does not show software update in settings therefore cant update!!!!!!!! HELP

    cannot access software updates

  • Portal Logoff delaying.

    Dear All, I'm facing the problem like while click on logoff, it will take time to logoff. My system is running on EP7.01 SP3. Please reply back how to resolve this. Really appriciated your inputs. Thanks and Regards, Mahee.

  • Possible to add time of last post on forum home pa...

    Is it possible to have the time of the last post on the main forum home page as it currently shows what toppic the last post was in but dosent show what time or who by if you made the last post and are waiting for a reply having this info visable wou