BDC for IW52 with giving Priority

Hi All,
I'll we very thankful if any one please help me in doing BDC for IW52 with giving Priority value .
Actually I don't able to find Priority option in IW52.
It'll be highly applicable if any one help me for this.
Thanks

Hi,
I think you can make use of the FM "ALM_ME_NOTIFICATION_CHANGE" instead of IW52 BDC.
Regards,
Smart Varghese

Similar Messages

  • BDC for MM with different material types.

    Hi, Can anyone explain me how the MM01 tcode can be handled in BDC, when material with different material types are present in the flat file. Different material types have different views and hence different recordings....How to handle this scenario?

    Based on different types of material, you can able to find out which all views are required to call through BDC. Try to find out views by using tables MARA, MAKT, MARD, MARC etc. Once it is confirmed you can call views using screen numbers.
    Here I don't think so more than one recording is required. Record MM01 transaction using Basic Data1, once you go inside the transaction select all the views required to complete the MM01 transaction. It will record all the views (hence screen numbers), then you can switch/call views based on screen numbers.
    Hope this helps you to resolve your query.

  • BDC for notification with sales order

    Hi,
    I have to code a BDC program for IW51 :  Service Notification with sales order.
    The problem is that in simulation mode (SHDB) the button "Sales order" is not working !!!
    although it works well in transaction mode!
    please help!
    A+
    Ihsen

    hi all,
    so anyone came across any BAPI or FM that creates Orders from Notification.
    My requirement is similar to "Order Explode" functionality in WPS1 transaction (MEB). For two notificaitons, if the task list having the same operation and same type, then a single order gets created.
    I want to know whether any FM/ BAPI is available that creates Order in reference to Notification. I just want to simulate Order creation.
    Waiting for reply.
    Debs

  • BDC for VA01 with multiple line items

    Hi,
    My client is 4.6c version, I have created a BDC program for transaction VA01 which will have multiple line items. I'm able to enter 12 items in the first instance, then 12 items next time. But I'm not doing any P+..System is automatically taking me to first item after reaching item 12 every time.
    But I have a doubt in production system also I will have only 12 items every time to enter..If not my program may not work..
    I'm calling BDC using following statment..
      CALL TRANSACTION 'VA01' USING BDCDATA
                        MODE 'N'
                        UPDATE 'S'
                        MESSAGES INTO lt_message.
    Please suggest me the solution.
    Regards
    Jaker.

    I had a similar problem with goods movements in a CO11N BDC I wrote.  Here's how it was fixed:
    DATA: lcl_opt     TYPE ctu_params.
    lcl_opt-defsize  = 'X'.
    CALL TRANSACTION 'CO11N' USING i_bdctbl OPTIONS FROM lcl_opt
                                 MESSAGES INTO messco11n.
    The option "defsize" makes sure that the screen always contains the same number of lines as it goes through the BDC.  That way, you can write in the paging logic without having to worry about the number of lines that appear on a user's screen as it may vary depending on how their screen resolution is set up.

  • Bdc for MM01 with classification view

    Hi all,
    I need to create materials using mm01 with classification view. since there is no bapi supporting this view, i am ding by bdc.
    The problem is in classification view once i give the class type and name a screen pops with caption
    characteristic value assignment, but theere are no charateristics displayed - wat values do i have to enter here >
    once i leave this screen the characteristics show up one after the other and i can load the details. but then while tryin to save error comes staing incnsisitent value assigned. wat do i ener in the intermediate screen t avoid this error.
    thanks

    hi when you are creating a classification view with characteristics.. you need to do all at once... you cannot modify..
    all you can do is delete the whole view and create with all the changed again.. I  dont memorize the BAPI .. but you have BAPIdelete.. BAPIadd..

  • User exit for XD01 with delivery priority

    Hi ,
    I am using a user exit EXIT_SAPMF02D_001 for customer master.Below is the piece of code .I am just displaying message based on delivery priority field in the customer master .
    But the probleam is when user only change the value in delivery priority field then only my message should come .But now my logic executes when ever no changes in the delivery priority field also and any touch other than this field also getting the message.
    Means the value in the delivery priority field  not refreshed in the customer master screen .Thats why the message is coming any time when not touching the field also.
    so can somebody suggest what to do?My logic should work only when delivery priority field only changed.
    TABLES:tpakd.
    DATA:l_lprio TYPE lprio,
         l_kztlf TYPE kztlf,
         l_antlf TYPE antlf.
    DATA:l_lp(2) TYPE c VALUE '03',
         l_kz(1) TYPE c VALUE 'B',
         l_an(1) TYPE c VALUE '1'.
    SELECT SINGLE * FROM tpakd
                    INTO tpakd
                    WHERE parvw = 'WE'
                      AND ktokd = i_kna1-ktokd.
    IF sy-subrc = 0 .
      MOVE i_knvv-lprio TO l_lprio.
      MOVE i_knvv-kztlf TO l_kztlf.
      MOVE i_knvv-antlf TO l_antlf.
      IF l_lprio = l_lp AND ( l_kztlf NE l_kz OR l_antlf NE l_an )  .
        MESSAGE w534(zm).
        ELSEIF l_lprio IS NOT INITIAL
                AND ( l_kztlf IS NOT INITIAL
                OR  l_antlf IS NOT  INITIAL
                OR  l_antlf NE '0'
                OR  l_antlf NE '9' ).
        MESSAGE w534(zm) .
      ENDIF.
    ELSE.
      EXIT.
    ENDIF.

    HI
    I think something doesn't sound good in this control
    ELSEIF l_lprio IS NOT INITIAL
      AND ( l_kztlf IS NOT INITIAL
           OR l_antlf IS NOT INITIAL                  "<-------
           OR l_antlf NE '0'
           OR l_antlf NE '9' ).
        MESSAGE w534(zm) .
    ENDIF.
    The control for L_ANTIF seems to be always valid, probably you should use AND insted of OR
    ELSEIF l_lprio IS NOT INITIAL
      AND ( l_kztlf IS NOT INITIAL
           OR ( l_antlf IS NOT INITIAL                  "<-------
           AND l_antlf NE '0'
           AND l_antlf NE '9' ) ).
        MESSAGE w534(zm) .
    ENDIF.
    Max
    Max

  • BDC for ME11 with SOOD object

    Hi Friends
    I am working on data transfer for ME11, info records, i have to upload Note(Text) as well in this , but button for this text dos'nt come in recording.
    how to upload this SOOD object..
    thanks
    regards
    siddharth

    Hi,
    you can load the InfoRecords by following LSMW objects including the Long texts:
    Object               0060   Purchasing info rec.
    Method               0000                       
    Program name         RM06IBI0                   
    Program type         B   Batch input            
    Use appropriate structure to load the long text.
    Hope this helps.
    Regards, Murugesh

  • Problem in doing BDC for XK01

    Hi all,
    i am doing BDC for XK01 with Line Item for Bank Details(Table Control..)
    With 3 Internal table
    IT_dummy to get the flat file
    IT_vend  for Header details
    IT_bank  for Item Details
    in this there is a Nested loop
    Loop at it_vend.
    perform bdc
    loop at it_bank.
    concatenate................
    endloop.
    endloop.
    because of the above nested loops..it's bit slow..
    & i am trying to do with a single internal table..
    The problem is..
    with the header data it's not picking all the item data(it's picking only one..)..help me in resolving the problem..
    Below the code..
    REPORT  ZMM_BDCTC1 NO STANDARD PAGE HEADING LINE-SIZE 255.
    PARAMETER:P_FILE TYPE RLGRAP-FILENAME.
    DATA BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
    DATA: BEGIN OF IT_DUMMY OCCURS 0,
          TYP,
          DES(255) TYPE C,
          END OF IT_DUMMY.
    DATA:DELIMITER VALUE ',',
         cnt(4) TYPE N,
         L_FNAM(30) TYPE C,
         FILENAME TYPE STRING.
    TYPES:BEGIN OF TY_FINAL,
          N(4) TYPE C,
          LIFNR TYPE RF02K-LIFNR,
          BUKRS TYPE RF02K-BUKRS,
          EKORG TYPE RF02K-EKORG,
          KTOKK TYPE RF02K-KTOKK,
          NAME1 TYPE LFA1-NAME1,
          SORTL TYPE LFA1-SORTL,
          LAND1 TYPE LFA1-LAND1,
          AKONT TYPE LFB1-AKONT,
          FDGRV TYPE LFB1-FDGRV,
          WAERS LIKE LFM1-WAERS,
          M(4) TYPE C,
          BANKS TYPE LFBK-BANKS,
          BANKL TYPE LFBK-BANKL,
          BANKN TYPE LFBK-BANKN,
          KOINH TYPE LFBK-KOINH,
          END OF TY_FINAL.
    DATA: IT_FINAL TYPE TABLE OF TY_FINAL,
          WA_FINAL TYPE TY_FINAL.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
       PROGRAM_NAME        = SYST-CPROG
       DYNPRO_NUMBER       = SYST-DYNNR
    IMPORTING
       FILE_NAME           = P_FILE.
         FILENAME = P_FILE.
         CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
             filename                      = FILENAME
            FILETYPE                      = 'ASC'
           tables
             data_tab                      = IT_DUMMY.
    START-OF-SELECTION.
    LOOP AT it_dummy.
        IF it_dummy-typ = 'H'.
          SPLIT  it_dummy-des AT delimiter INTO WA_FINAL-lifnr "Populating Header Table
                                                WA_FINAL-bukrs
                                                WA_FINAL-ekorg
                                                WA_FINAL-ktokk
                                                WA_FINAL-name1
                                                WA_FINAL-sortl
                                                WA_FINAL-land1
                                                WA_FINAL-akont
                                                WA_FINAL-fdgrv
                                                WA_FINAL-waers.
          WA_FINAL-N = WA_FINAL-N + 1.
          WA_FINAL-M = WA_FINAL-M + 1.
        ELSEIF it_dummy-typ = 'I'.
          SPLIT it_dummy-des AT delimiter INTO WA_FINAL-BANKS
                                               WA_FINAL-BANKL
                                               WA_FINAL-BANKN
                                               WA_FINAL-KOINH.
          APPEND WA_FINAL TO IT_FINAL.
        ENDIF.
      ENDLOOP.
    LOOP AT IT_FINAL INTO WA_FINAL.
    WRITE:/ WA_FINAL-N,
            WA_FINAL-LIFNR,
            WA_FINAL-BUKRS,
            WA_FINAL-EKORG,
            WA_FINAL-KTOKK,
            WA_FINAL-NAME1,
            WA_FINAL-SORTL,
            WA_FINAL-LAND1,
            WA_FINAL-AKONT,
            WA_FINAL-FDGRV,
            WA_FINAL-WAERS,
            WA_FINAL-M,
            WA_FINAL-BANKS,
            WA_FINAL-BANKL,
            WA_FINAL-BANKN,
            WA_FINAL-KOINH.
    ENDLOOP.
    data: WA_FINAL1 like line of IT_FINAL.
    clear WA_FINAL1.
    ******************BDC STARTS***********************
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
    CLIENT      = SY-MANDT
    GROUP       = 'ZMM_BDCTAB'
    KEEP        = 'X'
    USER        = SY-UNAME.
    Clear wa_final.
    LOOP AT IT_FINAL INTO WA_FINAL.
    WA_FINAL1 = WA_FINAL.
    CLEAR BDCDATA[].
    AT NEW N.
    cnt = 1.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-KTOKK'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  WA_FINAL1-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  WA_FINAL1-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  WA_FINAL1-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  WA_FINAL1-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-LAND1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  WA_FINAL1-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  WA_FINAL1-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  WA_FINAL1-LAND1.
    perform bdc_dynpro      using 'SAPMF02K' '0120'. "ERROR CLEARED
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-KUNNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-KOINH(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    ENDAT.
    *ENDON.
    IF WA_FINAL1-N = WA_FINAL1-M.
    CONCATENATE  'LFBK-BANKS(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKS.
    CONCATENATE  'LFBK-BANKL(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKL.
    CONCATENATE  'LFBK-BANKN(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKN.
    CONCATENATE  'LFBK-KOINH(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-KOINH.
    *ENDDO.
    cnt = cnt + 1.
    ENDIF.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-BANKS(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-FDGRV'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    *AT NEW LIFNR.
    perform bdc_field       using 'LFB1-AKONT'
                                  WA_FINAL1-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  WA_FINAL1-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-ZTERM'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB5-MAHNA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFM1-WAERS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  WA_FINAL1-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    AT END OF M.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
    TCODE     = 'XK01'
    TABLES
    DYNPROTAB = BDCDATA.
    ENDAT.
    CLEAR WA_FINAL1.
    CLEAR WA_FINAL.
    ENDLOOP.
    CALL FUNCTION 'BDC_CLOSE_GROUP'.
    *********************BDC ENDS***********************
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
    IF FVAL <> NODATA.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
    ENDIF.
    ENDFORM.
    Flat File is..
    HAAA45,1000,1000,0002,NAME45,N,IN,31000,A1,USD
    IIN,1000,1021,Name45
    IIN,1000,1022,Name45
    HAAA50,1000,1000,0002,NAME50,N,IN,31000,A1,USD
    IIN,1000,1023,Name50
    IIN,1000,1024,Name50

    Regarding avoiding the loop I have a suggestion, though I have not tried this .
    SAP help says " Using the internal table bdc_tab, you can provide any number of screens of the called transaction with input and user actions. " .
    Above implies you can load all records in the itab bdc_tab when doing call transaction. Say, your bdc_tabl has 30 records for 1 pass of the transaction. You need to update 10 vendor records. You simply load up all 300 records into bdc_tab. After every 30 record loads, you simulate a 'SAVE' press in your program but do not leave the transaction. Rather you simulate the keystroke that takes you to the first screen of XK01 after the save if not aready there, and start loading up the next transaction.

  • BDC scroll down with OK_CODE '=P+'

    Hi All,
        I am facing a problem with BDC scoll down. I have written BDC for MB1C with serial numbers. i have 100 serial numbers for my 100 qty. While running BDC i am not able to fill more than 19 rows( max allowed rows for that windaw) . So i have used '=P' OK_CODE.....while excecuting this i am getting error......"P Function not defined".
    Can anyone help me ........Following is the my BDC code for looping to enter serial numbers.
    MOVE 1 TO v_indx.
    *DO V_CNT TIMES.
    LOOP AT IT_EXCEL1 WHERE WERKS = IT_EXCEL-WERKS
                      AND   LGORT = IT_EXCEL-LGORT
                      AND   MATNR = IT_EXCEL-MATNR
                      AND   CHARG = IT_EXCEL-CHARG.
    perform bdc_dynpro      using 'SAPLIPW1' '0200'.
    CONCATENATE 'RIPW0-SERNR(' v_indx ')' INTO V_FNAM.
    perform bdc_field       using 'BDC_CURSOR'
                                  V_FNAM.
    perform bdc_field       using  V_FNAM
                                   IT_EXCEL1-SERNR.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=P+'.
    v_indx = v_indx + 1.
    ENDLOOP.

    Instead of Using '=p+' try with Insert OK CODE IT WILL WORK FINE in your items table .
    This is VA01 item table loop condition ..
    loop at it_va01a into wa_va01a where index = wa_header-index.
    if sy-tabix = 1.
         concatenate 'RV45A-MABNR(' idx ')' into fnam.
         perform bdc_field       using fnam
                                  wa_va01a-mabnr.
         concatenate 'RV45A-KWMENG(' idx ')' into fnam.
         perform bdc_field       using fnam
                                  wa_va01a-kwmeng.
    endif.
    if sy-tabix >= 2.
         idx = 2.
         perform bdc_dynpro using 'SAPMV45A' '4001'.
         perform bdc_field using 'BDC_OKCODE'
                                 '=POAN'.
         concatenate 'RV45A-MABNR(' idx ')' into fnam.
         perform bdc_field       using fnam
                                  wa_va01a-mabnr.
         concatenate 'RV45A-KWMENG(' idx ')' into fnam.
         perform bdc_field       using fnam
                                  wa_va01a-kwmeng.
    endif.
    endloop.
    Hope this will solve your issue.
    Regards,
    Alan Babu

  • Problem with uploading data from excel using BDC for tcode f-02

    Hi All,
    I am uploading data from excel using BDC for tcode f-02. The problem here is, while recording, the values of some fields are recording twice. I dont know why it's happening so. But if I run my abap program, I have to give those fields twice in my excel sheet. Otherwise data does not upload. But it is not the feasible way. We must give those fields once in excel. Please tell me, how I can solve the issue.
    With regards,
    Rosaline.

    Hi,
      in BDC each and every action is recording. If your press enter in same screen that also recorded once aging may be this is your case repeating field values will appear. we can solve the problem for repeat fields like below.
    suppose in your excel having repeated field X1 X2 X3 the X2 contains repeated field X3 means delete the X3 field.
    Now In your itab having X1 and X2 fields. While in the LOOP the ITAB pass the X2 field to repeated the fields.
    LOOP at ITAB to WA.
    CLEAR bdcdata_wa.
    bdcdata_wa-fnam = 'BDC_CURSOR'.
    bdcdata_wa-fval = 'RM08M-EBELN'.
    APPEND bdcdata_wa TO bdcdata_tab.
    CLEAR bdcdata_wa.
    bdcdata_wa-fnam = 'INVFO-BLDAT'.
    bdcdata_wa-fval = wa-X2." 1st time pass the X2 fields
    APPEND bdcdata_wa TO bdcdata_tab.
    CLEAR bdcdata_wa.
    bdcdata_wa-fnam = 'INVFO-BLDAT'.
    bdcdata_wa-fval = wa-X2." pass the same value to repeated field
    APPEND bdcdata_wa TO bdcdata_tab.
    Endloop.
    Hope you can understand.
    Regards,
    Dhina..

  • Issue with MB25 BDC for Dynamic Selection Screen

    Hi Experts,
    I recorded one BDC for MB25 Tcode regarding to determine Open Reservation(s) in E Mode (Display Mode). I am passing 3 parameters.
    1. Plant,
    2. Requirement Date
    3. Multiple Reservation Numbers i.e. RSNUM from Dynamic Selection i.e. 2nd Button -> Header Data for Reservation -> Reservation -> Multiple Selection Icon.
    But while executing that BDC, I need to manually click every time on 'Header Data for Reservation' Tree and then Multiple Selection for Reservation Icon.
    I want below steps automatically while executing:
    - Open 'Header Data for Reservation' Tree
    - Click Reservation
    - Open Popup for 'Multiple Selection'.
    So no need to click every time on Dynamic Selection Screen i.e. Header Data for Reservation -> Reservation -> Multiple Selection Icon.
    Please find attached screen shot for your reference.
    Please guide.
    Thanks and Regards,
    Emon Master

    Hello Jainam,
    submit (sy-repid) with selection-table v_sp
                             with free selections EXPRESSIONS
                             via selection-screen.
    Without going through the details, dont you think this will cause an inifinite loop as the calling & the called programs are the same.
    Please enlighten me !!
    BR,
    Suhas

  • BDC for Uploading data from XL sheet with unknown order of fields

    Hi SAP Gurus,
    My requirement is as follows,
    A BDC is to be developed for uploading data from an XL sheet, but the problem here is , the order of fileds in the sheet can be changed .
    ie,  for example the fields in the XL sheet are :-
      matnr    maktx   menge  amount
    but the user can give as
      matnr  amount  menge  maktx
      or
    maktx   matnr  amount  menge
    how i can solve this problem.
    Thanks and Regards,
    pavan.

    Hi Pavan,
    You need to handle it by your self, you can create a dynamic table based on the file value.
    The field name pass from file with the record as a header, and based on the header name create your dynamic table.
    afterward you can pass your value to BDC.
    for creating dynamic table you can use this method
    call method cl_alv_table_create=>create_dynamic_table
      exporting
       i_style_table             =
        it_fieldcatalog           = it_field[]
       i_length_in_byte          =
      importing
        ep_table                  = dyn_tab
       e_style_fname             =
      exceptions
        generate_subpool_dir_full = 1
        others                    = 2
    if sy-subrc <> 0.
      message id sy-msgid type sy-msgty number sy-msgno
                 with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.
    -Dhirendra

  • Problem with OPERATION TEXT(LTXA1) uploading using BDC For C202 Transaction

    Hi Experts,
    Im presently doing a BDC for the trransaction C202 (Change Master Recipe),my task was to upload the 'OPERATION TEXT' field PLPOD-LTXA1 which is actually Long text to an existing master recipe from a flat file during updation of the 'OPERATION TEXT the number of lines i was able to were 34 which we number lines on the displayed page and while updating the 35th line using the concept of bdc table control it is failing to insert the update text.
    I used all the ok codes but failed to update more than 34 lines.So,can someone tell me how to update the longtext beyound it.
    This is the Screenshot of my problem:
    [BDC_C202_error|http://www.freeimagehosting.net/uploads/79af6bac49.jpg]
    Thanx in advance.

    Hi,
    There is a better way of doing the long text upload in SAP. In your BDC, if I change the text editor, the BDC will not work.
    Hence ,
    Use function module " Save_Text" to update long texts in SAP.
    Please check its FM documentation or perform a search for this FM in SDN for more clarity.
    Write back in case you face further issues.
    Regards,
    Rijuraj
    Edited by: Rijuraj Raju on Sep 10, 2010 3:05 PM

  • Follow-up question for Chris H on longtext in BDC for IW31

    Chris -
    Here's the relevant part of my code:
    PERFORM DYNPRO USING:
    'X' 'SAPLCOIH'          '3000',            "
    ' ' 'CAUFVD-KTEXT   '   SCRN_PROBLEM1,     " 1st line problem text
    ' ' 'CAUFVD-ANLZU   '   CAUFVD-ANLZU,      " System condition
    ' ' 'BDC_OKCODE'       '=LTXK'.            "
    LOOP AT i_txt INTO wa_txt.
      v_txtln_ctr_n = sy-tabix + 2.    " Chris - note that I'm bumping to "3" here
      v_txtln_ctr_c = v_txtln_ctr_n.
      CONCATENATE 'RSTXT-TXLINE('
                  v_txtln_ctr_c
             INTO v_bdc_txtln_lit.
      CONDENSE v_bdc_txtln_lit NO-GAPS.
      PERFORM DYNPRO USING:
        'X' 'SAPLSTXX'          '1100',              "
        ' ' v_bdc_txtln_lit     wa_txt,              " line of problem text
        ' ' 'BDC_OKCODE'        '=ENTR'.             "
    ENDLOOP.
    This actually works - it creates an order in which the long text begins with what is in the variable SCRN_PROBLEM1 and continues with what is in i_txt concatenated together.  So I get, for example:
    "This is the short description. a b c d e"
    where:
    scrn_problem1 = 'This is the short description'
    row 1 of i_txt = 'a'
    row 2 of i_txt = 'b'
    row 3 of i_txt = 'c'
    row 4 of i_txt = 'd'
    row 5 of i_txt = 'e'
    The only problem is that the BDC doesn't go thru on its own.  When I change 'N' to 'E', the BDC brings up a screen with the title:
    "Change order text header Alternative Language EN"
    Then, when I just "back-arrow" from this, the BDC does complete successfully and I can see the correct text saved for the order in IW32.
    What am I doing wrong to cause this "change order text header" screen to come up?  Is it the "LTXK" value of the OK-CODE in the first dynpro call above?
    Or maybe something with my default user parameters?  I had to set quite a few of these in order to get the BDC to go with just a system, priority, and short text/long text.
    I'm really hoping you can see what's going on here because I'm at a loss.
    Thanks for whatever help you can provide.  You seem to have coded this BDC before, so that's why I'm directing this question to you.
    BTW, I'd try the BAPI except the documentation specifically says it won't observe user default parameters and this is a must in our situation.
    Thanks again
    Dave

    Chris/Rich -
    My suspicion was correct.  In the last loop over the longtext itab, the ok_code must be 'TXBA', not 'ENTR'.
    Here's the code that works without any 'E' interruptions:
    PERFORM DYNPRO USING:
    'X' 'SAPLCOIH'          '3000',            "
    ' ' 'CAUFVD-KTEXT   '   SCRN_PROBLEM1,     " 1st line problem text
    ' ' 'CAUFVD-ANLZU   '   CAUFVD-ANLZU,      " System condition
    ' ' 'BDC_OKCODE'       '=LTXK'.            "
    DESCRIBE TABLE i_txt LINES v_txt_cnt.
    LOOP AT i_txt INTO wa_txt.
      v_txtln_ctr_n = sy-tabix + 2.
      v_txtln_ctr_c = v_txtln_ctr_n.
      CONCATENATE 'RSTXT-TXLINE('
                  v_txtln_ctr_c
             INTO v_bdc_txtln_lit.
      CONDENSE v_bdc_txtln_lit NO-GAPS.
      IF sy-tabix = v_txt_cnt.
        v_txt_ok = '=TXBA'.                    " no more text lines coming
      ELSE.
        v_txt_ok = '=ENTR'.                    " more text lines coming
      ENDIF.
      PERFORM DYNPRO USING:
        'X' 'SAPLSTXX'          '1100',       
        ' ' v_bdc_txtln_lit     wa_txt,        " line of problem text
        ' ' 'BDC_OKCODE'        v_txt_ok.      " ok_code
    ENDLOOP.
    The result is that the longtest display in IW32 will be what's in "SCRN_PROBLEM1" followed by all the lines that are in i_txt.
    Reagrds
    djh

  • BDC for MIGO for GR OutBound Delivery( A01 & R05 ) from Movement Type 107 to 109

    Hi,
    I am stuck with a very typical situation need all your expertise and advices for a solution.
    We are basically trying to create change the movement type from 107 to 109 through MIGO.
    I have made a BDC recording for MIGO ( because we would like to track each delivery specifically under shipment , I know that there is a BAPI which is there to do this but it works fine if we do the shipment with Purchase Order as input which dont want in that manner )
    Process:
    1. Creating Production Order
    2. Creating Purchase Order
    3. Creating STO
    4. Deliveries
    5. PGI for Deliveries
    6. Shipment for group of outbound Deliveries
    I have created a z program where i am passing shipment number in the selection screen.
    Then it would take all the deliveries for that shipment and pass each delivery to MIGO and process it and change the status from 107 to 109.
    Interesting part here is, the code works absolutely perfect only from my ID. But when I test from other ID it is not executing, so to check where is the problem I have added mess_tab to the CALL TRANSACTION to capture what message is been populated for my ID comparing with others
    Message Captured on Others ID's:
    MSGID: 00
    MSGNR: 344
    MSGV1: SAPLMIGO
    MSGV2: 1300
    Message Captured on MY ID:
    MSGID: MIGO
    MSGNR: 012
    MSGV1: 5000005802
    MSGV2: (empty)
    This is the problem this program is executing only on MY ID, rest all ID's it is not processing.
    We have cross verified with security and basis regarding any authorization issues but nothing came up.
    Please help me what could be the issue ( WHY it is processing successfully for my and WHY NOT for other ID's)
    Below is the main code :
    CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'                     " Converting Date format to DD/MM/YYYY
         EXPORTING
           DATE_INTERNAL            = sy-datum
         IMPORTING
           DATE_EXTERNAL            = lv_date_external
         EXCEPTIONS
           DATE_INTERNAL_IS_INVALID = 1
           OTHERS                   = 2.
           IF SY-SUBRC <> 0.                                     "#EC NEEDED
    * Implement suitable error handling here
           ENDIF.
    *   Validating input shipment number with database table VTTP
           SELECT VTTP~TKNUM
                  VTTP~TPNUM
                  VTTP~VBELN
             FROM VTTP INNER JOIN VTTK
             ON VTTP~TKNUM = VTTK~TKNUM
             INTO TABLE IT_VTTP
             WHERE VTTK~TKNUM = P_TKNUM
               AND VTTK~STDIS = 'X'.
           IF sy-subrc = 0.
    *   Validating all deliveries having same Delivery type or not
             SELECT * FROM likp INTO TABLE it_likp FOR ALL ENTRIES IN it_vttp WHERE vbeln = it_vttp-vbeln
                                                                                AND vbtyp = 'J'.
             IF sy-subrc = 0.
               CLEAR lv_lines.
               LOOP AT it_likp INTO wa_likp.
                 REFRESH:it_vbfa,BDCDATA.
    *   Validating if Delivery Type = 109 (GR already done), or Delivery Type = 107 (must process for GR )
                 SELECT * FROM vbfa INTO TABLE it_vbfa WHERE vbelv = wa_likp-vbeln
    *                                                AND vbtyp_v = 'J'
                                                         AND bwart = '109'.
                 IF sy-subrc = 0.
                   lv_flag1 = 'X'.
                 ELSE.
                   SELECT * FROM vbfa INTO TABLE it_vbfa WHERE vbelv = wa_likp-vbeln
    *                                                  AND vbtyp_v = 'J'
                                                           AND bwart = '107'.
                   IF sy-subrc NE 0.
                     MESSAGE 'No Deliveries with Movement Type "107" ' TYPE 'I'.
                   ELSE.
                     lv_flag2 = 'X'.
                     lv_lines = lv_lines + 1.
    **  BDC for MIGO
                     perform bdc_dynpro      using 'SAPLMIGO' '0001'.
                     perform bdc_field       using 'BDC_OKCODE'
                                                   '=OK_GO'.
                     perform bdc_field       using 'GODYNPRO-ACTION'
                                                   'A01'.
                     perform bdc_field       using 'GODYNPRO-REFDOC'
                                                   'R05'.
                     perform bdc_field       using 'GODEFAULT_TV-BWART'
                                                   '109'.
                     perform bdc_field       using 'BDC_CURSOR'
                                                   'GODYNPRO-OUTBOUND_DELIVERY'.
                     perform bdc_field       using 'GODYNPRO-OUTBOUND_DELIVERY'
                                                   wa_likp-vbeln. "'80019574'.
                     perform bdc_field       using 'GOHEAD-BLDAT'
                                                   lv_date_external. "'04/29/2015'.
                     perform bdc_field       using 'GOHEAD-BUDAT'
                                                   lv_date_external. "'04/29/2015'.
                     perform bdc_field       using 'GOHEAD-WEVER'
                                                   '1'.
                     perform bdc_dynpro      using 'SAPLMIGO' '0001'.
                     perform bdc_field       using 'BDC_OKCODE'
                                                   '=OK_POST1'.
                     perform bdc_field       using 'GODEFAULT_TV-BWART'
                                                   '109'.
                     perform bdc_field       using 'GOHEAD-BLDAT'
                                                   lv_date_external. "'04/29/2015'.
                     perform bdc_field       using 'GOHEAD-LFSNR'
                                                   wa_likp-vbeln. "'0080019574'.
                     perform bdc_field       using 'GOHEAD-BUDAT'
                                                   lv_date_external. "'04/29/2015'.
                     perform bdc_field       using 'GOHEAD-WEVER'
                                                   '1'.
                     perform bdc_field       using 'GODYNPRO-DETAIL_ZEILE'
                                                   '   1'.
                     perform bdc_field       using 'GOITEM-ERFME'
                                                   'EA'.
                     perform bdc_field       using 'GOITEM-ERFMG'
                                                   '1'.
                     perform bdc_field       using 'GOITEM-LSMNG'
                                                   '1'.
                     perform bdc_field       using 'GOITEM-LSMEH'
                                                   'EA'.
                     perform bdc_field       using 'GOITEM-MIGO_ELIKZ'
                                                   '1'.
                     perform bdc_field       using 'GOITEM-BWART'
                                                   '109'.
                     perform bdc_field       using 'GOITEM-LGOBE'
                                                   'RX Cross-docking'.
                     perform bdc_field       using 'BDC_CURSOR'
                                                   'GODYNPRO-DETAIL_TAKE'.
                     perform bdc_field       using 'GODYNPRO-DETAIL_TAKE'
                                                   'X'.
                     PERFORM bdc_dynpro      USING 'SAPLMIGO' '1300'.
                     PERFORM bdc_field       USING 'BDC_CURSOR'
                                                   'G_TIP_DONT_SHOW_AGAIN'.
                     PERFORM bdc_field       USING 'BDC_OKCODE'
                                                   '=OK_TIP_GO'.
                     PERFORM bdc_field       USING 'G_TIP_DONT_SHOW_AGAIN'
                                                   'X'.
    *& Avoid unncessary screens to populate while processing background.
                     LV_OPTIONS-DISMODE = 'N'.
                     LV_OPTIONS-UPDMODE = 'S'.
                     LV_OPTIONS-NOBINPT = 'X'.
                     CALL TRANSACTION 'MIGO' USING BDCDATA  OPTIONS FROM LV_OPTIONS MESSAGES INTO IT_MESSTAB1 .
                     WAIT UP TO 1 SECONDS.
                     DELETE IT_MESSTAB1 WHERE MSGTYP NE 'E'.
                     IF IT_MESSTAB1[] IS NOT INITIAL.
                       APPEND LINES OF IT_MESSTAB1 TO IT_MESSTAB.
                     ENDIF.
                   ENDIF.
                 ENDIF.
               ENDLOOP.
             ENDIF.
           ELSE.
             MESSAGE 'Shipment Number does not exists Or not Planned' TYPE 'E'.
           ENDIF.
         ELSE.
           MESSAGE 'Please insert Shipment Number' TYPE 'E'.
         ENDIF.
         IF lv_flag1 = 'X' AND lv_flag2 = 'X'.
           MESSAGE 'This shipment is processed with an inconsistent goods receipt' TYPE 'I'.
         ELSEIF lv_flag1 = 'X'.
           MESSAGE 'Shipment already been processed for these deliveries' TYPE 'I'.
         ELSEIF lv_flag2 = 'X'.
           lv_lines1 = lv_lines.
           CONDENSE lv_lines1 NO-GAPS .
           CONCATENATE lv_lines1 'Goods Receipt are posted for the shipment '
                  INTO lv_message SEPARATED BY space.
           MESSAGE  lv_message TYPE 'I'.
         ENDIF.
    * Display Messages from Message TAB.
         DELETE ADJACENT DUPLICATES FROM IT_MESSTAB.
         DATA:lv_msg TYPE string.
         LOOP AT IT_MESSTAB INTO WA_MESSTAB.
           CALL FUNCTION 'FORMAT_MESSAGE'
             EXPORTING
               ID        = WA_MESSTAB-MSGID
               NO        = WA_MESSTAB-MSGNR
               V1        = WA_MESSTAB-MSGV1
               V2        = WA_MESSTAB-MSGV2
               V3        = WA_MESSTAB-MSGV3
               V4        = WA_MESSTAB-MSGV4
             IMPORTING
               MSG       = lv_msg
             EXCEPTIONS
               NOT_FOUND = 1
               OTHERS    = 2.
           IF sy-subrc <> 0.
    * Implement suitable error handling here
           ENDIF.
           WRITE:/ lv_msg.
         ENDLOOP.
    *        Start new screen                                              *
       FORM BDC_DYNPRO USING PROGRAM DYNPRO.                 "#EC PF_NO_TYPE
         CLEAR BDCDATA.
         BDCDATA-PROGRAM  = PROGRAM.
         BDCDATA-DYNPRO   = DYNPRO.
         BDCDATA-DYNBEGIN = 'X'.
         APPEND BDCDATA.
       ENDFORM.
    *        Insert field                                                  *
       FORM BDC_FIELD USING FNAM FVAL.                       "#EC PF_NO_TYPE
         CLEAR BDCDATA.
         BDCDATA-FNAM = FNAM.
         BDCDATA-FVAL = FVAL.
         APPEND BDCDATA.
       ENDFORM.
    Thanks,
    Srini

    Hi Rob,
    Thanks for quick reply.
    I have checked the NOTE : 304122
    But there in the NOTE it says ( " BAPI, BAPI_GOODSMVT_CANCEL, BAPI_GOODSMVT_CREATE, CNTL_ERROR" )
    These BAPI's work perfectly for (purchase order as input type), but here out type is ( A01 & R05 ) we are giving DELIVERY NUMBER as input to MIGO.
    So for this scenario we cannot use those BAPI's mentioned in the NOTE.
    Also as stated earlier in the message interesting part is
    "The code works absolutely perfect only from my ID. But when I test from other ID it is not executing. Code is working exactly as expected ONLY to my ID. When i try to execute the same code from another's ID it is not working"
    So what do you think might be the issue?

Maybe you are looking for