Problem in bdc PROG

Dear All,
            Iam facing the problem in BDC Program..the code is..
LOOP AT IT_RECORD.
perform bdc_dynpro      using 'SAPMF05A' '0300'.
perform bdc_field       using 'BDC_CURSOR'  'RF05A-NEWKO'.
perform bdc_field       using 'BDC_OKCODE'  '/00'.
perform bdc_field       using 'BSEG-WRBTR'                IT_RECORD-vramt.  "'100000'.
perform bdc_field       using 'RF05A-NEWBS'                          it_record-pkey.  "'50'.
perform bdc_field       using 'RF05A-NEWKO'                          it_Record-vrac.  "'24450024'.
perform bdc_field       using 'DKACB-FMORE'                          'X'.
perform bdc_dynpro      using 'SAPLKACB' '0002'.
perform bdc_field       using 'BDC_CURSOR'  'COBL-GSBER'.
perform bdc_field       using 'BDC_OKCODE'  '=ENTE'.
perform bdc_field       using 'COBL-GSBER'                            it_record-gsber.  "'KABA' .
COUNT = COUNT + 1.
WRITE:/ COUNT.
IF COUNT = 4.
  perform bdc_dynpro      using 'SAPMF05A' '0302'.
  perform bdc_field       using 'BDC_CURSOR'
                                'BSEG-GSBER'.
  perform bdc_field       using 'BDC_OKCODE'
                                '/00'.
  perform bdc_field       using 'BSEG-WRBTR'                        IT_RECORD-VRAMT.   "'50000'.
  perform bdc_field       using 'BSEG-MWSKZ'                           '**'.
  perform bdc_field       using 'BSEG-GSBER'                        IT_RECORD-GSBER ."'kaba'.
  perform bdc_field       using 'BSEG-ZFBDT'                           '03.12.2007'.
  perform bdc_dynpro      using 'SAPMF05A' '0302'.
  perform bdc_field       using 'BDC_CURSOR'
                                'BSEG-WRBTR'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=BS'.
  perform bdc_field       using 'BSEG-WRBTR'                          IT_RECORD-VRAMT. "'50,000.00'.
  perform bdc_field       using 'BSEG-MWSKZ'
  perform bdc_field       using 'BSEG-BUPLA'                            '1800'.
  perform bdc_field       using 'BSEG-GSBER'                            IT_RECORD-GSBER."'KABA'.
  perform bdc_field       using 'BSEG-ZFBDT'                            '03.12.2007'.
  perform bdc_dynpro      using 'SAPMF05A' '0700'.
  perform bdc_field       using 'BDC_CURSOR'
                                'RF05A-NEWBS'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=BU'.
  CALL TRANSACTION 'F-02' USING BDCDATA MODE 'A'.
ELSE.
  CONTINUE.
ENDIF.
ENDLOOP.
here iam using 4 line item(in text file) ..if count = 4 its not going to next screen, its repeating..its not simulating and posting the doc..
pls guide me friends.

hi i send the code here, if u can understand clear it..
report ZBDC_FI_MVF_02 no standard page heading line-size 255.
DATA : BEGIN OF IT_RECORDS OCCURS 0,
       BLDAT LIKE BKPF-BLDAT,
       BLART LIKE BKPF-BLART,
       BUKRS LIKE BKPF-BUKRS,
       BUDAT LIKE BKPF-BUDAT,
       MONAT LIKE BKPF-MONAT,
       WAERS LIKE BKPF-WAERS,
       NEWBS LIKE RF05A-NEWBS,
       NEWKO LIKE RF05A-NEWKO,
       END OF IT_RECORDS.
DATA : BEGIN OF IT_RECORD OCCURS 0,
       VRAMT(15),  " LIKE BSEG-WRBTR,
       PKEY  LIKE RF05A-NEWBS,
       VrAC(10),  " LIKE RF05A-NEWKO,
       GSBER LIKE COBL-GSBER,
       END OF IT_RECORD.
DATA : BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
       DATE1 LIKE SY-DATUM,
       DATE2 LIKE SY-DATUM,
       LOOP(3).
       DATA : COUNT(3).
start-of-selection.
  PERFORM GET_DATA1.
  PERFORM GET_DATA2.
  PERFORM PROCESS_DATA.
FORM PROCESS_DATA.
perform bdc_dynpro      using 'SAPMF05A' '0100'.
perform bdc_field       using 'BDC_CURSOR'
                              'RF05A-NEWKO'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
    date1 = it_RecordS-bldat.
    CONCATENATE DATE16(2) DATE14(2) DATE1+0(4) INTO DATE1.
perform bdc_field       using 'BKPF-BLDAT'               DATE1.  "'03.12.2007'.
perform bdc_field       using 'BKPF-BLART'               IT_RECORDS-BLART.  "'SA'.
perform bdc_field       using 'BKPF-BUKRS'               IT_RECORDS-BUKRS.  "'1800'.
    date2 = it_RecordS-bUdat.
    CONCATENATE DATE26(2) DATE24(2) DATE2+0(4) INTO DATE2.
perform bdc_field       using 'BKPF-BUDAT'               DATE2.  "'03.12.2007'.
perform bdc_field       using 'BKPF-MONAT'               IT_RECORDS-MONAT.  "'9'.
perform bdc_field       using 'BKPF-WAERS'               IT_RECORDS-WAERS.  "'INR'.
perform bdc_field       using 'FS006-DOCID'              '*'.
perform bdc_field       using 'RF05A-NEWBS'               IT_RECORDS-NEWBS.  "'40'.
perform bdc_field       using 'RF05A-NEWKO'               IT_RECORDS-NEWKO.  "'24450024'.
*perform bdc_field       using 'RF05A-NEWBS'               IT_RECORDS-PKEY.  "'50'.
*perform bdc_field       using 'RF05A-NEWKO'               IT_RECORDS-VENAC.  "'24450024'.
*perform bdc_field       using 'DKACB-FMORE'  'X'.
COUNT = '0'.
LOOP AT IT_RECORD.
perform bdc_dynpro      using 'SAPMF05A' '0300'.
perform bdc_field       using 'BDC_CURSOR'  'RF05A-NEWKO'.
perform bdc_field       using 'BDC_OKCODE'  '/00'.
perform bdc_field       using 'BSEG-WRBTR'                IT_RECORD-vramt.  "'100000'.
perform bdc_field       using 'RF05A-NEWBS'                          it_record-pkey.  "'50'.
perform bdc_field       using 'RF05A-NEWKO'                          it_Record-vrac.  "'24450024'.
perform bdc_field       using 'DKACB-FMORE'                          'X'.
perform bdc_dynpro      using 'SAPLKACB' '0002'.
perform bdc_field       using 'BDC_CURSOR'  'COBL-GSBER'.
perform bdc_field       using 'BDC_OKCODE'  '=ENTE'.
perform bdc_field       using 'COBL-GSBER'                            it_record-gsber.  "'KABA' .
COUNT = COUNT + 1.
IF COUNT = 4.
clear count.
  perform bdc_dynpro      using 'SAPMF05A' '0302'.
  perform bdc_field       using 'BDC_CURSOR'
                                'BSEG-GSBER'.
  perform bdc_field       using 'BDC_OKCODE'
                                '/00'.
  perform bdc_field       using 'BSEG-WRBTR'                        IT_RECORD-VRAMT.   "'50000'.
  perform bdc_field       using 'BSEG-MWSKZ'                           '**'.
  perform bdc_field       using 'BSEG-GSBER'                        IT_RECORD-GSBER ."'kaba'.
  perform bdc_field       using 'BSEG-ZFBDT'                           '03.12.2007'.
  perform bdc_dynpro      using 'SAPMF05A' '0302'.
  perform bdc_field       using 'BDC_CURSOR'
                                'BSEG-WRBTR'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=BS'.
  perform bdc_field       using 'BSEG-WRBTR'                          IT_RECORD-VRAMT. "'50,000.00'.
  perform bdc_field       using 'BSEG-MWSKZ'
  perform bdc_field       using 'BSEG-BUPLA'                            '1800'.
  perform bdc_field       using 'BSEG-GSBER'                            IT_RECORD-GSBER."'KABA'.
  perform bdc_field       using 'BSEG-ZFBDT'                            '03.12.2007'.
  perform bdc_dynpro      using 'SAPMF05A' '0700'.
  perform bdc_field       using 'BDC_CURSOR'
                                'RF05A-NEWBS'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=BU'.
  CALL TRANSACTION 'F-02' USING BDCDATA MODE 'A'.
ELSE.
  CONTINUE.
ENDIF.
ENDLOOP.
perform bdc_dynpro      using 'SAPMF05A' '0302'.
perform bdc_field       using 'BDC_CURSOR'
                               'BSEG-GSBER'.
perform bdc_field       using 'BDC_OKCODE'
                               '/00'.
perform bdc_field       using 'BSEG-WRBTR'                '50000'.
perform bdc_field       using 'BSEG-MWSKZ'                '**'.
perform bdc_field       using 'BSEG-GSBER'                'kaba'.
perform bdc_field       using 'BSEG-ZFBDT'                '03.12.2007'.
perform bdc_dynpro      using 'SAPMF05A' '0302'.
perform bdc_field       using 'BDC_CURSOR'
                               'BSEG-WRBTR'.
perform bdc_field       using 'BDC_OKCODE'
                               '=BS'.
perform bdc_field       using 'BSEG-WRBTR'                IT_RECORD-VRAMT.  "'50,000.00'.
perform bdc_field       using 'BSEG-MWSKZ'                '**'.
perform bdc_field       using 'BSEG-BUPLA'                '1800'.
perform bdc_field       using 'BSEG-GSBER'                IT_RECORD-GSBER.  "'KABA'.
perform bdc_field       using 'BSEG-ZFBDT'                '03.12.2007'.
perform bdc_dynpro      using 'SAPMF05A' '0700'.
perform bdc_field       using 'BDC_CURSOR'
                               'RF05A-NEWBS'.
perform bdc_field       using 'BDC_OKCODE'
                               '=BU'.
perform bdc_transaction using 'F-02'.
*CALL TRANSACTION 'F-02' USING BDCDATA MODE 'A'.
  ENDFORM.
       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 <> ' '.
    CLEAR BDCDATA.
    BDCDATA-FNAM = FNAM.
    BDCDATA-FVAL = FVAL.
    APPEND BDCDATA.
  ENDIF.
ENDFORM.
*&      Form  GET_DATA
form GET_DATA1 .
  CALL FUNCTION 'UPLOAD'
   EXPORTING
     FILENAME                      = 'C:\MVF-02_1.txt'
     FILETYPE                      = 'DAT'
    TABLES
     data_tab                      = IT_RECORDS
   EXCEPTIONS
     CONVERSION_ERROR              = 1
     INVALID_TABLE_WIDTH           = 2
     INVALID_TYPE                  = 3
     NO_BATCH                      = 4
     UNKNOWN_ERROR                 = 5
     GUI_REFUSE_FILETRANSFER       = 6
     OTHERS                        = 7.
  IF sy-subrc <> 0.
     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
     WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
endform.                    " GET_DATA
*&      Form  GET_DATA2
form GET_DATA2 .
  CALL FUNCTION 'UPLOAD'
   EXPORTING
     FILENAME                      = 'C:\MVF-02_2.TXT'
     FILETYPE                      = 'DAT'
    TABLES
     data_tab                      = IT_RECORD
   EXCEPTIONS
     CONVERSION_ERROR              = 1
     INVALID_TABLE_WIDTH           = 2
     INVALID_TYPE                  = 3
     NO_BATCH                      = 4
     UNKNOWN_ERROR                 = 5
     GUI_REFUSE_FILETRANSFER       = 6
     OTHERS                        = 7
  IF sy-subrc <> 0.
     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
     WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
endform.                    " GET_DATA2

Similar Messages

  • Problem with BDC on VA02

    Hi All,
    I am facing a problem with bdc on va02. After hitting enter on the first screen it pops an info message "consider subsequent douments". It doesn't get recorded in recorded. Hence I am not able to run the transaction with no screen mode. Please help me to suppress the info message
    Navin

    Hi Navin,
    These kind of messages and pop ups are precisely the reason why use of BDC for updating transactions is NOT advisable.
    If you were to bypass such messages, you would have to put a check to see why the message appears (in this case probably because the sales document flow for the sales order in table VBFA has some documents) and then write a logic to either handle the message or not.
    Instead i would recommend you use the BAPI functions provided by SAP to change the sales order.
    Have a look the BAPI for sales order change attached to the business object BUS2012. For this goto transaction SWO1 and enter the BUS2012 business object. Then goto methods and look for the "change" method. Double click on the method and look at the BAPI used to implement the method. Go ahead and use this method in your program as against a BDC.
    I am sure it will be a much better option.
    Otherwise if you still want to proceed with a BDC, please debug at the point where the message/pop up appears to ascertain reason for the same and then incorporate the same check in your program to handle the pop up.
    Regards,
    Aditya

  • Problem in BDC Background

    Hi
    I am facing a problem in BDC ,call trasaction, for FB01
    While the recording is done, the confi has BSEG-DMBTR field (Local Currecny)
    and now its not there is the screen.
    If i run my BDC is foreground, it says Field does not exist as sucess message and then i press enter and it let me post the record.
    But in Background, its not letting me post the document.
    wether its because , in background if any screen elements is message , being a succes message, it doesnot post ?
    please help

    Hi Munish singh,
            Actually this  error because of currency field.
    1) declare the character variable equal to the dmbtr field output length. ex: data: v_dmbtr type c length 18.
    2) before passing to the screen field.
    3) move itab-dmbtr to v_dmbtr.
        condence v_dmbtr.
    4) And pass this v_dmbtr to the screen field ....
      then your issue positively will resolved.
    Dont forgot to Reward me points .....
    All the very best....
    Regards,
    Sreenivasa sarma K.

  • Problem in BDC Recording

    Hi I am having a problem in BDC Recording. My requirement is that when I input data in transaction fb02 to block the invoices, It shows a list of invoices. Now i need to double click that item(line) in which PK = 06 at runtime during bdc recording. During BDC recording it takes the line number on which we have clicked which is constant but i want it dynamic that if item 1 is having PK=6, that line should be double clicked and if item 3 is having PK=6, the third item should be double clicked to open another screen. Kindly help me... Thanks in advance.

    Hi Ravi,
    While writing your code that is in your code you know which line number is having the PK = 06, then you can use the same line number and add the code for double click after that.
    Regards,
    Atish

  • Problem in bdc session method for tcode FS00

    Hi Experts,
    problem in bdc session method, when i run this program no output is shown.
    Even it is not calling the transaction.
    code as follows.
    *& Report  Z_GL_MASTER
    *& CATEGORY         =  BDC.
    *& DESCRIPTION      =  UPLOADING G/L MASTER RECORDS.
    *& TECHNICAL CONST  =  FRANCIS REDDY.
    *& FUNTIONAL CONST  =  FICO.
    REPORT  Z_GL_MASTER.
    *& Internal  Table
    DATA : BEGIN OF IT_UPLOAD OCCURS 0,
           SAKNR LIKE  GLACCOUNT_SCREEN_KEY-SAKNR,          " ACCOUNT NUMBER.
           BUKRS LIKE  GLACCOUNT_SCREEN_KEY-BUKRS,          " COMPANY CODE.
           KTOKS LIKE GLACCOUNT_SCREEN_COA-KTOKS,           " ACCOUNT GROUP.
           XPLACCT LIKE GLACCOUNT_SCREEN_COA-XPLACCT,       " P&L STATEMEMENT.
           GVTYP LIKE  GLACCOUNT_SCREEN_COA-GVTYP,          " P&L STATEMENT TYPE.
           XBILK LIKE GLACCOUNT_SCREEN_COA-XBILK,           " BALANCE SHEET STATEMENT
           SHORT LIKE GLACCOUNT_SCREEN_COA-TXT20_ML,        " SHORT TEXT.
           LONG LIKE GLACCOUNT_SCREEN_COA-TXT50_ML,         " LONG TEXT.
           WAERS LIKE GLACCOUNT_SCREEN_CCODE-WAERS,         " ACCOUNT CURRENCY.
           XSALH LIKE GLACCOUNT_SCREEN_CCODE-XSALH,         " ONLY BALANCES IN LOCAL CURRENCY.
           MITKZ LIKE GLACCOUNT_SCREEN_CCODE-MITKZ,         " RECONCILATION ACCOUNT FOR ACCOUNT TYPEGLACCOUNT_SCREEN_CCODE-MITKZ
           XOPVW LIKE GLACCOUNT_SCREEN_CCODE-XOPVW,         " OPEN ITEM MANAGEMENT.
           XKRES LIKE GLACCOUNT_SCREEN_CCODE-XKRES,         " LINE ITEM DISPLAY.
           ZUAWA LIKE GLACCOUNT_SCREEN_CCODE-ZUAWA,         " SORT KEY.
           FSTAG LIKE GLACCOUNT_SCREEN_CCODE-FSTAG,         " FIELD STATUS GROUP.
           XGKON LIKE GLACCOUNT_SCREEN_CCODE-XGKON,         " RELAVENT CASH FLOW.
           END OF IT_UPLOAD.
    *& Internal  Table FOR BDC DATA.
    DATA : IT_BDCDATA TYPE  BDCDATA OCCURS 0  WITH HEADER LINE.
    *& DATA DECLARATIONS.
    DATA : V_FILE LIKE RLGRAP-FILENAME.
    *&  SELECTION SCREEN.
    PARAMETER : P_FILE LIKE V_FILE.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
         PERFORM GET_FILENAME.
    START-OF-SELECTION.
          PERFORM UPLOAD_DATA.
          PERFORM BDCDATA_OPEN.
          PERFORM BDC_POPULATE.
          PERFORM BDC_CLOSE.
    *&      Form  GET_FILENAME
    form GET_FILENAME .
      CALL FUNCTION 'F4_FILENAME'
       EXPORTING
         PROGRAM_NAME        = SYST-CPROG
         DYNPRO_NUMBER       = SYST-DYNNR
         FIELD_NAME          = 'P_FILE'
       IMPORTING
         FILE_NAME           = P_FILE.
    endform.                    " GET_FILENAME
    *&      Form  UPLOAD_DATA
    form UPLOAD_DATA .
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
       FILENAME                      =  P_FILE
       FILETYPE                      = 'DAT'
      TABLES
        data_tab                     = IT_UPLOAD.
    endform.                    " UPLOAD_DATA
    *&      Form  BDCDATA_OPEN
       FORM FOR BDC_OPEN_GROUP.
    form BDCDATA_OPEN .
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
       CLIENT                    = SY-MANDT
       GROUP                     = 'GLMASTER'
       HOLDDATE                  = SY-DATUM
       KEEP                      = 'X'
       USER                      = SY-UNAME.
    endform.                    " BDCDATA_OPEN
    *&      Form  BDC_POPULATE
      POPULATING BDC DATA .
    form BDC_POPULATE .
    loop at it_upload.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING 'BDC_OKCODE' '=ACC_CRE'.
    PERFORM BDC_SUB2 USING 'BDC_CURSOR' 'GLACCOUNT_SCREEN_KEY-SAKNR'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_KEY-SAKNR'    IT_UPLOAD-SAKNR.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_KEY-BUKRS'    IT_UPLOAD-BUKRS.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING 'BDC_OKCODE' '=2102_GROUP'.
    PERFORM BDC_SUB2 USING 'BDC_CURSOR' 'GLACCOUNT_SCREEN_COA-KTOKS'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-KTOKS'    IT_UPLOAD-KTOKS.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-XPLACCT'  IT_UPLOAD-XPLACCT.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING 'BDC_OKCODE' '=2102_BS_PL'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-GVTYP'    IT_UPLOAD-GVTYP.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-XBILK'    IT_UPLOAD-XBILK.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING 'BDC_CURSOR' 'GLACCOUNT_SCREEN_COA-TXT20_ML'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-TXT20_ML' IT_UPLOAD-SHORT.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_COA-TXT50_ML' IT_UPLOAD-LONG.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING  'BDC_OKCODE' '=TAB02'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-WAERS'  IT_UPLOAD-WAERS.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-XSALH'  IT_UPLOAD-XSALH.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-MITKZ'  IT_UPLOAD-MITKZ.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-XOPVW'  IT_UPLOAD-XOPVW.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-XKRES'  IT_UPLOAD-XKRES.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-ZUAWA'  IT_UPLOAD-ZUAWA.
    PERFORM BDC_SUB1 USING 'X' 'SAPLGL_ACCOUNT_MASTER_MAINTAIN' '2001'.
    PERFORM BDC_SUB2 USING 'BDC_OKCODE' '=TAB03'.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-FSTAG' IT_UPLOAD-FSTAG.
    PERFORM BDC_SUB2 USING 'GLACCOUNT_SCREEN_CCODE-XGKON' IT_UPLOAD-XGKON.
    CALL FUNCTION 'BDC_INSERT'
      EXPORTING
        TCODE                  = 'FS00'
       TABLES
         dynprotab              = IT_BDCDATA.
    endloop.
    endform.                    " BDC_POPULATE
    *&      Form  BDC_CLOSE
    FORM FOR CLOSING BDC_GROUP
    form BDC_CLOSE .
    CALL FUNCTION 'BDC_CLOSE_GROUP'.
    endform.                    " BDC_CLOSE
    *&      Form  BDC_SUB1
       FORM FOR BDCDATA.
    form BDC_SUB1   USING  A  B  C.
    CLEAR  IT_BDCDATA.
    IT_BDCDATA-DYNBEGIN = A.
    IT_BDCDATA-PROGRAM =  B.
    IT_BDCDATA-DYNPRO =   C.
    APPEND IT_BDCDATA.
    endform.                    " BDC_SUB1
    *&      Form  BDC_SUB2
          text
    form BDC_SUB2   USING  A  B.
    CLEAR  IT_BDCDATA.
      IT_BDCDATA-FNAM = A.
      IT_BDCDATA-FVAL = B.
      APPEND IT_BDCDATA.
    endform.                    " BDC_SUB2
    Points will be  rewarded.
    Thanks in advance.
    Francis.

    Hi,
    Once the program is executed..It will a BDC session..
    THen you have to use the transaction SM35..To process the BDC session..
    Thanks,
    Naren

  • Syntax problem with BDC perform

    Dear Friends,
    small problem in BDC Perform syntax but I am not getting how to do this..
    I have writen the code like this in my BDC byt its throughing the error...Here I want to do the validation on each and every field. I mean If that field values are empty i don't want to change the SAP field value.
    my code is like this.
        PERFORM dynpro USING:
        'X' 'SAPLMGMM' '0080'.
        IF NOT p_int_matl-werks IS INITIAL.
        ' ' 'RMMG1-WERKS' p_int_matl-werks.
        ENDIF.
        IF NOT p_int_matl-werks IS INITIAL.
        ' ' 'RMMG1-LGORT' p_int_matl-lgort.
          ENDIF.
        ' ' 'BDC_OKCODE' '/00'.
    pls give me exact code how to do this...
    Thanks
    Sridhar

    Hi sridher,
    1. this kind of syntax ie. IF will give error.
    2. If ur requirement is : blank value should not be put in bdc,
    3. then one way is to change / write the logic
        inside the form itself.
    4. ie. inside the routine/form DYNPRO.
    5. So, it will be then general for all performs.
    regards,
    amit m.

  • Problem in BDC while going back to previous screen in FB60

    Dear All,
        I have a problem in BDC my BDc stops when it tries to go back to previous screen then manually i have to click on the back button then it gets posted. the previous screen recording for FB60 is
    SAPMSSY0     0120     X                                                                               
    BDC_CURSOR     16/32
                                                                BDC_OKCODE     =&IC1
    When we do back by clicking on the screen is not getting recorded. Kindly suggest a suitable Solution for the same.
    Reagrds

    FB60 is an EnjoySAP transaction and not well suited to batch input (look for notes). Better to use a BAPI or batch input on FB01.
    Rob

  • Problem in BDC for F-32

    Hi Experts,
    I m facing a problem while doing the BDC for F-32, i want to make Normal OI check field as Uncheck  through BDC , while recording i have uncheck the check box and the field value appears to be ' ' in the recording , but when i process the BDC the field remains CHECKED by Default.
    pls help how can i unchecked the field.
    I have tried it by puting the value of the field 'X' also but still it remains checked .
    pls help me how can i UNCHECKED the Normal OI  screen field .

    Hi
    The output format of an amonut is managed by the currency, you shouldn't have any particular problem,
    In BDC program the field to be used to transfer the amount has to be char, so probably the easier solution is to write it into the bdc field in according to the currency:
    WRITE <AMOUNT> CURRENCY <CUURENCY> TO <BDC FIELD>.
    Max

  • Problem in BDC for F-02 -- Currency Problem

    Dear Experts,
    I have written a BDC for F-02 to upload the opening balances of vendors.
    Problem is , this BDC is for Libya country,  where decimal places is 3.
    Now when i run my BDC, if the amount is  22.54, it will upload it as 22.540, which is ok, but if the amount is 22.543, it upload it as 22.540 instead of 22.543.
    can one provide some guidance in this....
    Regards,
    Maverick

    Hi
    The output format of an amonut is managed by the currency, you shouldn't have any particular problem,
    In BDC program the field to be used to transfer the amount has to be char, so probably the easier solution is to write it into the bdc field in according to the currency:
    WRITE <AMOUNT> CURRENCY <CUURENCY> TO <BDC FIELD>.
    Max

  • Problem from BDC

    Hi all,
    1) i got a problem in BDC i.e suppose i have a flat file that is having 10 records
         but my problem is i want to update first 8 records only using Call transaction
        so where will do this and what is the logic for this . for both cases i.e Call      transaction & session methods?
    good rewards for replay,
    regards,
    sudharsan

    Once you upload the file into an internl table,
    delete the last two rows from the internal table.
    call function GUI_UPLOAD
    describe table itab lines v_lines.
    delete table itab index v_lines.
    v_lines = v_lines - 1.
    delete table itab index v_lines.
    then do your call transaction or BDC session method.
    Regards,
    Ravi

  • PROBLEM IN BDC F-04 --NO PAGE DOWN

    HI
    Experts,
    Getting problem in bdc for f-04 , The data is split on basis of
    business area (gsber) , and for one business area there are more
    then 2000 document number, till the screen of doc.no the data is
    coming into fields but i have to put all the doc number for that
    b.area. And only i can enter 16 doc.no as there is no page down i
    have to enter so that it takes another 16 doc.no .
    but i tried it by at new command and then i tried it by on chage of
    but it picks only first doc.no its not piclking all doc.no.
    LOOP AT i_final.
        MOVE i_final TO wa_itab.
        ON CHANGE OF wa_itab-gsber  .
          CLEAR w_count.
          PERFORM bdc_dynpro      USING 'SAPMF05A' '0122'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'RF05A-NEWKO'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'BKPF-BLDAT'
                                         wa_itab-bldat .                       "'27.07.2006'.
          PERFORM bdc_field       USING 'BKPF-BLART'
                                         wa_itab-blart.                        "'SA'.
          PERFORM bdc_field       USING 'BKPF-BUKRS'
                                         wa_itab-bukrs.                         "'NPIL'.
          PERFORM bdc_field       USING 'BKPF-BUDAT'
                                         wa_itab-budat.                         "'27.07.2006'.
          PERFORM bdc_field       USING 'BKPF-WAERS'
                                         wa_itab-waers.                          "'INR'.
          PERFORM bdc_field       USING 'BKPF-XBLNR'
                                         wa_itab-xblnr.                         "'INR'.
          PERFORM bdc_field       USING 'BKPF-BKTXT'
                                        wa_itab-bktxt.                          "'INR'.
          PERFORM bdc_field       USING 'RF05A-XPOS1(04)'
                                         wa_itab-xpos1.
          PERFORM bdc_field       USING 'RF05A-NEWBS'
                                         wa_itab-newbs.         "'50'.
          PERFORM bdc_field       USING 'RF05A-NEWKO'
                                        wa_itab-newko.          "'9991010'.
          PERFORM bdc_dynpro      USING 'SAPMF05A' '0300'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'BSEG-WRBTR'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=PA'.
          PERFORM bdc_field       USING 'BSEG-WRBTR'
                                        wa_itab-wrbtr.                            "'826532.58'.
          PERFORM bdc_dynpro      USING 'SAPLKACB' '0002'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'COBL-FIPOS'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=ENTE'.
          PERFORM bdc_field       USING 'COBL-GSBER'
                                         wa_itab-gsber.         "'1101'.
          PERFORM bdc_field       USING 'COBL-PRCTR'
                                         wa_itab-prctr.         "'2000'.
          PERFORM bdc_dynpro      USING 'SAPMF05A' '0710'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'RF05A-XPOS1(03)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=PA'.
          PERFORM bdc_field       USING 'RF05A-AGKON'
                                         wa_itab-agkon.         "'2810200'.
          PERFORM bdc_field       USING 'RF05A-XPOS1(03)'
                                         'X'.
        ENDON.
        PERFORM bdc_dynpro      USING 'SAPMF05A' '0731'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'RF05A-SEL01(06)'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=PA'.
        w_count = w_count + 1.
        CONCATENATE 'RF05A-SEL01(' w_count ')' INTO w_bdc.
        PERFORM bdc_field       USING   w_bdc
                                        wa_itab-sel01.
        IF w_count >= 16.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          w_count = 0.
        ENDIF.
       ENDON.
       AT END OF gsber.
    *IF W_FLAG = 'X'.
          PERFORM bdc_dynpro      USING 'SAPDF05X' '3100'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=BU'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'RF05A-ABPOS'.
          PERFORM bdc_field       USING 'RF05A-ABPOS'
                                        '1'.
          PERFORM bdc_transaction USING 'F-04'.
       ENDAT. "At end of
    *ENDIF.
      ENDLOOP.
      PERFORM close_group.

    Iam doing a bdc for F-04 (post with clearing header date)
    i got a file in which the data is splited on business area wise,
    and when i enter the details on first screen
    with post key 40 and enter after entering the details here like
    busines area profit cenrter i have to click
    process open item .
    here i have to select the doc.no and enter acct no and again
    have to process the open item .. where exactly my problem is
    when i process it i will get ascreen in which
    the doc.no are
    from to
    and i can enter only 16 doc no here but where as there are more
    then 50 doc number for one businees area in file ..there is
    HOPE U GOT MY POINT NOW .
    REGARDS

  • Problems on BDC

    hello expert,
          I had a problem on BDC . it is that after recording , I want to upload my pc file to the server ,then change the material description . (I record TRX MM02).
    after I upload the local file to the server , when I execute the BDC session , it poped up a window shows 'select at least one view',
    I just wandered how to skip this popup window , I just only want to see the view of BASIC DATA1 .
    Kind Regards
    Nick

    Hi,
    You need to do the recording again. It seems you recording file is not complete.
    While recording perform the steps for update in the way you want you system
    do to it for you.
    Also check whether you are calling MM02 or MM01 while calling the BDC.
    Regards,
    Prakash Pandey

  • Error  while uploading data in table t_499s through BDC Prog

    Hi
    am facing problem while uploading data in table t_499s through BDC Program  , if there is more than 15 records in file its not allowing to upload kindly suggest what to do
    Thanx
    Mukesh s

    Hi,
    See if you want to update only single table, which has User maintenance allowed
    Use Modify statement.
    EX:
    LOOP AT ITAB INTO WA_TAB.
        MOVE-CORRESPONDING WA_TAB TO T499S.
        MODIFY T499S.
        CLEAR T499S.
      ENDLOOP.
    It will update the table, to check go to sm30 , and check in V_T499S.
    Rgds
    Aeda

  • Problem in BDC for VA01 transaction TEXTS tab(Upgrading from 4.5b to ECC6)

    Hi All,
    I am working in upgrade project from 4.5b version to ECC6 version.
    I am facing problem in TEXTS tab of VA01 transaction. In earlier version it is a table control containing of Language, Description & First line but, in ECC6 the screen is modified with texteditor, a list box for language key and a Text type at the left.
    Now my problem is how to record this in BDC and how to read the text in the texteditor?
    Thanks in Advance,
    Ravi Kiran.

    Hi Seshagiri,
    In this case i would suggest the use of BAPI if there's no compulsion to use BDC.
    BAPI_SALESORDER_CHANGE                     Sales order: Change Sales Order
    BAPI_SALESORDER_CONFIRMDELVRY
    BAPI_SALESORDER_CREATEFROMDAT1    Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDAT2    Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDATA    Create Sales Order, No More
    BAPI_SALESORDER_GETLIST        Sales order: List of all Orders for Customer
    BAPI_SALESORDER_GETSTATUS      Sales Order: Display Status
    BAPI_SALESORDER_SIMULATE       Sales Order: Simulate Sales Order
    try using these for creation or change of orders instead of bdcs.
    hope this helps and revert for more clarifications if any.
    <b>Always reward points to useful suggestions.</b>
    regards,
    Vikas

  • Problem in BDC

    Hii all,
    I have develop a BDC for transaction pa30( for 2013  infotype ).
    DATA: MODE1 TYPE C VALUE 'N',
            UPDT1 TYPE C VALUE 'A'.
    CALL TRANSACTION 'PA30'  USING  BDCDATA
                                 MODE   MODE1
                                 UPDATE UPDT1
                                 MESSAGES INTO MESSTAB.
    If any one open pa30 for any employy and the same time if i run that bdc for that particular employee
    it shows an error message.
    Problem :If i try to upload data in pa30 for multiple employee and the first employee is lock by some other user then the erroe messege coming that all other employee also lock.
    But if first employee is not locked but second employee locked  then the the first employee's data update successfully,for second employee shows a message that the employee is locked by some other user.In the selection screen if there is 3rd employee that also update successfully.
    plz help.
    Edited by: sk2789 on Feb 18, 2011 5:07 AM
    Moderator message: please use more descriptive subject lines for your posts.
    Edited by: Thomas Zloch on Feb 18, 2011 3:23 PM

    LOOP AT employee.
    PERFORM check_lock_data.
    IF v_lock_flag = 'X'.
      CONTINUE.
    ELSE.
    PERFORM bdc_upload.
    ENDIF.
    CLEAR v_lock_flag.
    ENDLOOP.
    FORM check_lock_data.
    TABLES: rp50g.
    rp50g-pernr = '00003'.  "Your Pernr from LOOP
    DATA message_handler  TYPE REF TO if_hrpa_message_handler.
    DATA message_list     TYPE REF TO cl_hrpa_message_list.
    DATA message_tab      TYPE hrpad_message_tab.
    DATA mess_wa          TYPE hrpad_message.
    DATA is_ok            TYPE boole_d.
    CREATE OBJECT message_list.
    message_handler = message_list.
    *ensure that sapfp50p is loaded
    PERFORM do_nothing IN PROGRAM sapfp50p.
    CALL METHOD cl_hrpa_masterdata_enq_deq=>enqueue_by_pernr
      EXPORTING
        tclas           = 'A'
        pernr           = rp50g-pernr
        message_handler = message_handler
      IMPORTING
        is_ok           = is_ok.
    IF is_ok NE 'X'.
    Set your error flag
    v_lock_flag = 'X'.
    ENDIF.
    ENDFORM.
    Let me know if it works.
    Thanks,
    Prasoon Sahay
    Edited by: Prasoon Sahay on Feb 18, 2011 5:30 PM

Maybe you are looking for

  • What functionlity to use for this business requirement ?

    Hi Experts, We have following requirements in our system 1. PRODUCT A will have component that are interchangeable. lets say components X, Y and Z. 2. PRODUCT B will also have the same component which is interchangeable (X, Y, Z)      X. Y and Z comp

  • Error Code 88 with Pixma Pro9500 even with art margins set correctly

    I'm getting error code 88 (from the Canon Pro9500 series print monitor window) when attempting to print on an A3Plus art paper (Hahnemuehle William Turner), even though I have the paper size set correctly (in the Photoshop Print Dialog, Print Setting

  • "Skype cannot connect"

    Hi there, I'm reverting to an older version of the skype client due to the fact that the ability to block people in group conversations was removed, along with conversation topic pictures. I have an offline installer for the version of the client tha

  • While installing adobe edge anim it shows insert adobe edge animate disk

    while installing it shows insert adobe edge animate disk but i am only installing the trial version. how can i have disk when i downloaded it for the trial use. ? please help.!!

  • HTML Area: PeopleSoft

    I would like to select the Recruiting locations from a a HTML area populated from a table. I need to use these populated values as the search critera to search for a Job Opening (Something similar to this:https://careers.verizonwireless.com/psp/erphr