BDC using call transaction

Hi ,
This is vijay...
can anyone help me plz
Hi,
Iam uploading data using call transaction.Tcode is ff67.In this TCode we have the begining balance(ssald) and ending balance(esald).The new record we are uploading will take the begining balance as the previous record ending balance, if we give the begining balance wrong then the record does not saved it will show error(the begining balance does not match with the prior ending balance).
while uploading the data using MODE A iam able to get the desired output but by using the MODE N iam not able to get the desired output i,e if there is any error in the begining balance also the record is being saved iam not getting the error message.
Iam attaching the code below..please help me
report Z_BRS_BDC no standard page heading line-size 255.
        INTERNAL TABLES DECLARATIONS
DATA : BEGIN OF bdcdata OCCURS 0.
        INCLUDE STRUCTURE bdcdata.
DATA : END OF bdcdata.
DATA:  LV_OUT TYPE STRING.
DATA : iopt LIKE ctu_params.
DATA : wa_rec_err   TYPE i.
DATA : wa_rec_wri TYPE i.
DATA : wa_tot_rec TYPE i.
DATA : amt(16) type c.
DATA : BEGIN OF gu_upload OCCURS 0,
       hbkid LIKE febmka-hbkid,
       hktid LIKE febmka-hktid,
       aznum LIKE febmka-aznum,
       azdat LIKE febmka-azdat,
       ssald LIKE amt,
       esald LIKE amt,
       budtm LIKE febmka-budtm,
       mnam1 LIKE febmka-mnam1,
       jname LIKE febmka-jname,
       vgman LIKE febmka-vgman,
       valut LIKE febep-valut,
       kwbtr(13) TYPE c,
       chect_kf LIKE febmkk-chect_kf,
      END OF gu_upload.
DATA:GU_DOWNLOAD LIKE GU_UPLOAD OCCURS 0 WITH HEADER LINE.
kishi*********************************
DATA: BEGIN OF itab OCCURS 0,
     vgman LIKE febmka-vgman,
     valut LIKE febep-valut,
     kwbtr(13) TYPE c,
     chect_kf LIKE febmkk-chect_kf,
     END OF itab.
kishi)(_()00-8-09
DATA: BEGIN OF  messtab OCCURS 0.
        INCLUDE STRUCTURE bdcmsgcoll.
DATA: END OF messtab.
DATA: BEGIN OF messtab1 OCCURS 0.
        INCLUDE STRUCTURE messtab.
DATA: END OF messtab1.
DATA : BEGIN OF int_count OCCURS 0.
        INCLUDE STRUCTURE alsmex_tabline.
DATA : END OF int_count.
DATA: c_tcode      LIKE sy-tcode              VALUE 'FF67',
      c_upd        LIKE ctu_params-updmode    VALUE 'S',
      c_def_size   LIKE ctu_params-defsize    VALUE 'X'.
*VALUES FOR STARTING COLUMNS AND ROWS IN THE EXCEL SHEET
DATA : c_begcol     TYPE i                     VALUE '1',
      c_begrow     TYPE i                     VALUE '1',
*DATA IS ENDED AT THE 13TH COLUMN IN THE EXCELSHEET
      c_endcol     TYPE i                     VALUE '13',
*LAST ROW IN THE EXCEL SHEET
      c_endrow     TYPE i                     VALUE '65536',
      c_path(3)    TYPE c                     VALUE 'C:\'.
*Field Symbols
FIELD-SYMBOLS: <fs>.
     SELECTION SCREEN PARAMETERS
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : p_file LIKE rlgrap-filename DEFAULT
'C:\ ',
*This is the path for downloading file
P_FNAME2 LIKE RLGRAP-FILENAME ,
c_mode LIKE ctu_params-dismode  DEFAULT 'N'.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*F4 HELP FOR FILE SELECTION
  PERFORM validate_input_file.
START-OF-SELECTION.
  CLEAR gu_upload.
  REFRESH gu_upload.
     UPLOAD THE DATA FROM FLAT FILE TO INTERNAL TABLE
  PERFORM file_upload.
  iopt-dismode = c_mode.
  iopt-updmode = c_upd.
  iopt-defsize = c_def_size.
     POPULATE THE DATA THROUGHSCREENS
  PERFORM bdc_upload.
END-OF-SELECTION.
*DISPLY THE ERROR RECORDS
PERFORM DISPLAY-DATA.
      FORM file_upload                                              *
FORM file_upload.
  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
       EXPORTING
            filename                = p_file
            i_begin_col             = c_begcol
            i_begin_row             = c_begrow
            i_end_col               = c_endcol
            i_end_row               = c_endrow
       TABLES
            intern                  = int_count
       EXCEPTIONS
            inconsistent_parameters = 1
            upload_ole              = 2
            OTHERS                  = 3.
  LOOP AT int_count.
    ASSIGN COMPONENT int_count-col OF STRUCTURE gu_upload TO <fs>.
    IF sy-subrc NE 0.
      EXIT.
    ENDIF.
    <fs> = int_count-value.
    AT END OF row.
      APPEND gu_upload.
      CLEAR gu_upload.
    ENDAT.
  ENDLOOP.
*kishhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
  LOOP AT gu_upload.
    itab-vgman = gu_upload-vgman.
    itab-valut =  gu_upload-valut.
    itab-kwbtr = gu_upload-kwbtr.
    itab-chect_kf = gu_upload-chect_kf.
    APPEND itab.
  ENDLOOP.
*kishiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
ENDFORM.                    "file_upload
*&      Form  BDC_UPLOAD
FORM bdc_upload.
  LOOP AT gu_upload.
    CLEAR bdcdata.
    REFRESH bdcdata.
*&      POPULATE THE DATA FOR FIRST SCREEN
perform bdc_dynpro      using 'SAPMF40K' '0101'.
perform bdc_field       using 'BDC_CURSOR'
                              'FEBMKA-JNAME'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
perform bdc_field       using 'FEBMKA-BUKRS'
                              'IN14'.
perform bdc_field       using 'FEBMKA-HBKID'
                              gu_upload-hbkid.
perform bdc_field       using 'FEBMKA-HKTID'
                              gu_upload-hktid.
perform bdc_field       using 'FEBMKA-AZNUM'
                              gu_upload-aznum.
perform bdc_field       using 'FEBMKA-AZDAT'
                              gu_upload-azdat.
perform bdc_field       using 'FEBMKA-SSALD'
                              gu_upload-ssald.
perform bdc_field       using 'FEBMKA-ESALD'
                              gu_upload-esald.
perform bdc_field       using 'FEBMKA-BUDTM'
                              gu_upload-budtm.
perform bdc_field       using 'FEBMKA-MNAM1'
                              gu_upload-mnam1.
perform bdc_field       using 'FEBMKA-JNAME'
                              gu_upload-jname.
*&      POPULATE THE DATA FOR SECOND SCREEN
    DATA : fnam(20) TYPE c,
          idx      TYPE c.
    MOVE 1 TO idx.
    LOOP AT itab.
      PERFORM bdc_dynpro      USING 'SAPMF40K' '8000'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'FEBMKK-CHECT_KF(03)'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      CONCATENATE 'FEBMKA-VGMAN(' idx ')' INTO fnam.
      PERFORM bdc_field       USING fnam
                                    itab-vgman.
      CONCATENATE 'FEBEP-VALUT(' idx ')' INTO fnam.
      PERFORM bdc_field       USING fnam itab-valut.
      CONCATENATE 'FEBMKA-KWBTR(' idx ')' INTO fnam.
      PERFORM bdc_field       USING fnam itab-kwbtr.
      CONCATENATE 'FEBMKK-CHECT_KF(' idx ')' INTO fnam.
      PERFORM bdc_field USING fnam itab-chect_kf.
      idx = idx + 1.
    ENDLOOP.
*perform bdc_dynpro      using 'SAPMF40K' '8000'.
*perform bdc_field       using 'BDC_CURSOR'
                             'FEBMKK-CHECT_KF(01)'.
*perform bdc_field       using 'BDC_OKCODE'
                             '/00'.
*perform bdc_field       using 'FEBMKA-VGMAN(01)'
                             'z001'.
*perform bdc_field       using 'FEBEP-VALUT(01)'
                             '2007/04/26'.
*perform bdc_field       using 'FEBMKA-KWBTR(01)'
                             '          5000-'.
*perform bdc_field       using 'FEBMKK-CHECT_KF(01)'
                             '1122'.
perform bdc_dynpro      using 'SAPMF40K' '8000'.
perform bdc_field       using 'BDC_CURSOR'
                              'FEBMKK-CHECT_KF(01)'.
perform bdc_field       using 'BDC_OKCODE'
                              '=SICH'.
*&      POPULATE THE DATA FOR FOURTH SCREEN
perform bdc_dynpro      using 'SAPMF40K' '0101'.
perform bdc_field       using 'BDC_CURSOR'
                              'FEBMKA-BUKRS'.
perform bdc_field       using 'BDC_OKCODE'
                              '=BUCH'.
perform bdc_field       using 'FEBMKA-BUKRS'
                              'IN14'.
perform bdc_field       using 'FEBMKA-HBKID'
                              gu_upload-hbkid.
perform bdc_field       using 'FEBMKA-HKTID'
                              gu_upload-hktid.
perform bdc_field       using 'FEBMKA-AZNUM'
                              gu_upload-aznum.
perform bdc_field       using 'FEBMKA-AZDAT'
                              gu_upload-azdat.
perform bdc_field       using 'FEBMKA-SSALD'
                              gu_upload-ssald.
perform bdc_field       using 'FEBMKA-ESALD'
                              gu_upload-esald.
perform bdc_field       using 'FEBMKA-BUDTM'
                              gu_upload-budtm.
perform bdc_field       using 'FEBMKA-MNAM1'
                              gu_upload-mnam1.
perform bdc_field       using 'FEBMKA-JNAME'
                              gu_upload-jname.
*perform bdc_dynpro      using 'SAPMF40K' '0101'.
*perform bdc_field       using 'BDC_OKCODE'
                             '/EENDE'.
*perform bdc_field       using 'BDC_CURSOR'
                             'FEBMKA-BUKRS'.
perform bdc_dynpro      using 'SAPMF40K' '0101'.
perform bdc_field       using 'BDC_OKCODE'
                              '/EABBR'.
perform bdc_field       using 'BDC_CURSOR'
                              'FEBMKA-BUKRS'.
*&      USING THE CALL TRANSACTION
    PERFORM call_transaction.
   CLEAR BDCDATA.                      "<--- Add here
   REFRESH BDCDATA.                 "<--- Add here
  ENDLOOP.
ENDFORM.                    " BDC_UPLOAD
*&      Form  VALIDATE_INPUT_FILE
FORM validate_input_file.
  CALL FUNCTION 'WS_FILENAME_GET'
       EXPORTING
            def_path         = ' c:\ '
            mask             = ',.txt,.*.'
            mode             = 'O'
            title            = 'Upload '
       IMPORTING
            filename         = p_file
       EXCEPTIONS
            inv_winsys       = 1
            no_batch         = 2
            selection_cancel = 3
            selection_error  = 4
            OTHERS           = 5.
IF sy-subrc <> 0.
IF sy-subrc <> 0 AND sy-subrc <> 3.
   MESSAGE e100(zm) WITH text-007.
ENDIF.
ENDFORM.                    " VALIDATE_INPUT_FILE
       Start new screen                                              *
FORM bdc_dynpro USING program dynpro.
  CLEAR bdcdata.
  bdcdata-program  = program.
  bdcdata-dynpro   = dynpro.
  bdcdata-dynbegin = 'X'.
  APPEND bdcdata.
ENDFORM.                    "bdc_dynpro
       Insert field                                                  *
FORM bdc_field USING fnam fval.
  CLEAR bdcdata.
  bdcdata-fnam = fnam.
  bdcdata-fval = fval.
  APPEND bdcdata.
ENDFORM.                    "bdc_field
*&      Form  CALL_TRANSACTION
FORM call_transaction.
  DATA: l_index LIKE sy-tabix.
  CALL TRANSACTION  c_tcode USING bdcdata
                            MODE c_mode
                            MESSAGES INTO messtab.
*POPULATE THE ERROR RECORDS INTO INTERNAL TABLE
  IF SY-SUBRC NE 0.
    GU_DOWNLOAD-HBKID = GU_UPLOAD-HBKID.
   GU_DOWNLOAD-HBKID = GU_UPLOAD-HBKID.
    GU_DOWNLOAD-HKTID = GU_UPLOAD-HKTID.
    GU_DOWNLOAD-AZNUM = GU_UPLOAD-AZNUM.
    GU_DOWNLOAD-AZDAT = GU_UPLOAD-AZDAT.
    GU_DOWNLOAD-ESALD = GU_UPLOAD-ESALD.
    GU_DOWNLOAD-SSALD = GU_UPLOAD-SSALD.
    GU_DOWNLOAD-BUDTM = GU_UPLOAD-BUDTM.
    GU_DOWNLOAD-MNAM1 = GU_UPLOAD-MNAM1.
    GU_DOWNLOAD-JNAME = GU_UPLOAD-JNAME.
    GU_DOWNLOAD-VGMAN = GU_UPLOAD-VGMAN.
    GU_DOWNLOAD-VALUT = GU_UPLOAD-VALUT.
    GU_DOWNLOAD-KWBTR = GU_UPLOAD-KWBTR.
    GU_DOWNLOAD-CHECT_KF = GU_UPLOAD-CHECT_KF.
    APPEND GU_DOWNLOAD.
*DISPLAY THE PROGRESS OF PROCESS
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
   PERCENTAGE       = 0
   TEXT             = 'Downloading is in process'.
*DOWNLOADING THE ERROR RECORD
    LV_OUT = P_FNAME2.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
        FILENAME               =  LV_OUT
        WRITE_FIELD_SEPARATOR  =      'X'
      TABLES
        DATA_TAB                =  GU_DOWNLOAD.
ENDIF.
  IF NOT messtab[] IS INITIAL.
    PERFORM format_message.
  ENDIF.
ENDFORM.                    " CALL_TRANSACTION
*&      Form  DISPLAY-DATA
FORM display-data.
  SKIP.
  WRITE: 'SY-SUBRC' , sy-subrc.
ENDFORM.                    " DISPLAY-DATA
      FORM FORMAT_MESSAGE                                           *
FORM format_message.
  DATA: l_msg(100),
   l_index LIKE sy-tabix.
  LOOP AT messtab.
    READ TABLE gu_upload INDEX l_index.
    CALL FUNCTION 'FORMAT_MESSAGE'
         EXPORTING
              id        = messtab-msgid
              lang      = sy-langu
              no        = messtab-msgnr
              v1        = messtab-msgv1
              v2        = messtab-msgv2
              v3        = messtab-msgv3
              v4        = messtab-msgv4
         IMPORTING
              msg       = l_msg
         EXCEPTIONS
              not_found = 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.
   WRITE:/ l_msg.
  ENDLOOP.
  WRITE:/ l_msg.
ENDFORM.
Message was edited by:
        vijayd duvvada

Hi,
  First , keep the mode "E" and check the debugger , you can exactly see where the error is and let me know, what error and where it is stoping.
By your coding, i suppose to think that, its proble in the amount (currency). When ever you are try to pass the value, and value is not there in upload file or data is mismatch, the call transaction will fail in mode 'A' and succesful in mode 'N'.
In that situation use this before the currecny field.
IF NOT FEBMKA-SSALD IS INTIAL.
   perform bdc_field using 'FEBMKA-ESALD'
                                  gu_upload-esald.
ENDIF.
tHANKS
Manju

Similar Messages

  • Is BDC's CALL TRANSACTION 'VA01' is not equals to ONLINE(manual) creation?

    Hi Experts,
    Ours is IS-Oil.
    If the user do not enters/inputs OIC_MOT (Mode Of Transport) at ITEM level on the External Details popup, SAP will get it from Customar Master-KNA1 and populates on it, because its a mandatory field (OIC_MOT), but, do not throws an Error message and interupts the sales order creation process.
    We have a inbound IDOC posting function module for sales order (VA01), which posts the sales oreders by using BDC (CALL TRANSACTION 'VA01') in the system. In this function module, we are not populating the OIC_MOT field contained segment by hoping SAP will populate/default it while it hits CALL TRANSACTION 'VA01' of my BDC of my FM of IB IDOC. But, SAP is not defaulting/populating and throwing error message (saying 'OIC_MOT field is a mandatory input field' data is missing) and IDOC is failing, pls. let me know Wht its so? is the BDC's CALL TRANSACTION 'VA01' is not equals to ONLINE (manual ) creation of sales order?
    Thank you

    Hi
    Several transactions can ba a different behavior between online and bdc process, but if you simulate the trx by SM35 you should find out these gaps
    I don't know OIL vertical, but the main transactions have a bapi can be used insted of BDC program (BAPI_SALESORDER_CREATEFROMDAT2, but perhaps there's a particular BAPI for OIL).
    Max

  • Error 00-341 RAISE_EXCEPTION when using Call Transaction for VA01 in backgr

    Hi,
    I am getting this message when I use call transaction to create a sales order using VA01. Following is the statement I have used.  Note that when i execute the program online, I am not getting any errors. I could create sales order without any problem. I am getting this exception only when I run in background.
          CALL TRANSACTION 'VA01'
                     USING BDC_TAB
                      MODE 'N'
                    UPDATE 'S'
             MESSAGES INTO W_MESS_TAB.
    When I captured message tab, I got following messages.
    DC006 - Control Framework: Fatal error - GUI cannot be reached
    00341 Runtime error RAISE_EXCEPTION has occurred.
    Please help me in this regard.
    Regards
    Kasi

    Some times execution of BDC program in back ground is different from the foreground. Some screens may appear in background and raise error while same will not when executed in foreground.
    Double click the message in Session log to know more details.
    One way is to suppress the screen while executing BDC.
    Alternatively I suggest to use BAPI instead.
    - Sanjay

  • Tracing of message in Status Bar using Call Transaction for MRBR

    Hi
    As per the business requirement, I would like to automate the MRBR Transaction. I am achieving this by using Call Transaction. After aaplying certain company codes as an i/p; i receive the invoices as an o/p in a ALV Lay out. Say for example, 100 invoices are displayed in a AlV Lay-out after applying i/p. Now I select all these 100 invoices and release them.
    All these steps are recorded and supplied to Call Transaction via BDC table.
    Problem:
    The number of invoices released, appear in the status bar of that ALV Lay-out screen. This message appears on the ALV screen after I have released the invoices and clicked on "SAVE" button.I would like to use this information and display this number (No. of Invoices released) in my Job Log. But I do not know how to do it. Could any one help me out for this?
    Thanks in advance,
    Jigar Shah.

    Yes I have tried that option as well.
    But the thing is, the recording gets over as soon as I click on "SAVE" button.And that message apperas in status bar only after I click on "SAVE" button.So this way the message in the status bar never gets recorded.
    Thanks & Regards,
    Jigar Shah.

  • How to use Call Transaction in AVL ........ for va02

    Hi Experts,
    I am using CALL TRANSACTION in ALV for VA02, but I want to go on item number. The following form i have used and it is working but I want to go on perticular item number in va02. pl. guide me.
    FORM user_command USING r_ucomm LIKE sy-ucomm
                      rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
        WHEN '&IC1'.
        IF rs_selfield-fieldname = 'VBELN'.
          READ TABLE it_out INTO wa_itab INDEX rs_selfield-tabindex.
          SET PARAMETER ID : 'AUN' FIELD wa_itab-vbeln .
                           'APO' FIELD wa_itab-posnr.
          CALL TRANSACTION 'VA02' AND SKIP FIRST SCREEN.
        ENDIF.
      ENDCASE.
    ENDFORM.
    *=====================================
    Yusuf

    Hi,
    use BDC for that....
    check out the BDC part of coding for it.
    REFRESH  itab_bdcdata.
      CLEAR    itab_bdcdata.
    *initial screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '0102'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'VBAK-VBELN'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'VBAK-VBELN'
                          <b>          g_t_atpma4-vbeln.</b>
    *item overview screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '4001'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '=POPO'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'RV45A-MABNR(04)'.
    *popup screen (move item to top)
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '0251'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'RV45A-POSNR'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '=POSI'.
      PERFORM bdc_field       USING 'RV45A-POSNR'
                                    <b>g_t_atpma4-posnr.</b>
    *item overview screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '4001'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'VBAP-POSNR(01)'.
      PERFORM bdc_field       USING 'RV45A-VBAP_SELKZ(01)'
                                    'X'.
    *Call transaction VA02
      CALL TRANSACTION 'VA02'  USING itab_bdcdata
                               MODE 'E'
                               UPDATE 'A'
                               MESSAGES INTO itab_bdcmsg.
    Patil

  • BDC with call transaction VD02 works fin in A mode but not in N mode

    Hi All,
        I have BDC program developed in 4.6c using call transaction VD02 works fine with mode A but not with mode N.
    Now we upgraded to ECC 6.0.Do I need to change anything?

    No, you don't have to change anything for ECC. BTW, I wonder why VD02 is not working in the background for you?

  • Can anybody pls tell me  limitations of BDC Session & Call transaction?

    hi, Guys, this is srinivas.
    How can we deside which method is to(BDC session/ Call transaction)
    use to upload data to SAP database?
    Can we run Call Transaction in Background?
    Which is preferable for bulk data? and Why?
    how can we restart Session if any error occurs?
    Thanku?

    Hi,
    Hope it helps this......
    SAP BDC INTERVIEW QUESTIONS  & ANSWERS
    1.       What is full form of BDC Session?
    Batch Data Communication Session.
    2.       What are the steps in a BDC session?
    The first step in a BDC session is to identify the screens of the transaction that the program will process.  Next step is to write a program to build the BDC table that will be used to submit the data to SAP.  The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command.
    3.       How do you find the information on the current screen?
    The information on the current screen can be found by SYSTEM à STATUS command from any menu.
    4.       How do you save data in BDC tables?
    The data in BDC tables is saved by using the field name ‘BDC_OKCODE’ and field value of ‘/11’.
    5.       What is the last entry in all BDC tables?
    In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of ‘/11’.
    6.       What is a multiple line field?
    A multiple line field is a special kind of field which allows the user to enter multiple lines of data into it.
    7.       How do you populate data into a multiple line field?
    To populate data into a multiple line field, an index is added to the field name to indicate which line is to be populated by the BDC session (Line index).
    8.       Write the BDC table structure.
    BDC table structure
    FIELD                     TYPE                            DESCRIPTION
    Program                CHAR (8)                      Program name of transaction.
    DynPro                 CHAR (4)                      Screen number of transaction.
    DynBegin              CHAR (1)                      Indicator for new screen.
    Fnam                    CHAR (35)                     Name of database field from screen.
    Fval                      CHAR (80)                     Value to submit to field.
    9.       Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP?
    No.  The CALL TRANSACTION method allows only a single transaction to be processed by SAP.
    10.    Does the BDC-INSERT function allow multiple transactions to be processed by SAP?
    Yes.
    11.    What is the syntax for ‘CALL TRANSACTION’?
    CALL TRANSACTION trans .
    Three possible entries are there for MODE.
                      A          -           Show all screens.
                      E          -           Show only screens with errors.
                      N          -           Show no screens.
    Regards,
    V.Balaji
    Reward if usefull

  • How to use call transaction stmt from webdynpro application

    Hi Expers,
    Can I use call transaction 'tcode' in my webdynpro application, I have tried in my application but i am getting short dump saying
    Error analysis+
    An exception occurred that is explained in detail below.The exception, which is assigned to class'CX_SY_SEND_DYNPRO_NO_RECEIVER',  was not caught and therefore caused a runtime error. The reason for the exception is: During background processing, the system  attempted to send a screen to a user. Current screen: "SAPLMGMM " 0060.
    I haven't used any more statements in my application am sure from my application side everything perfect. but I have seen a screen shot
    with SAP screen in webbrowser.
    Please help me out if you are not clear abt my doubt please ask me for clear idea.
    Thanks in advance
    Phalani M

    Hello,
    Since you can't use the call transaction command in web dynpros components, I suggest you to create a report and fill a BDC table on this and use the call transaction in this report.
    So, in your web dynpro component you can use a command SUBMIT to create a job in background.
    DATA: number           TYPE tbtcjob-jobcount,
          name             TYPE tbtcjob-jobname VALUE 'JOB_TEST',
          print_parameters TYPE pri_params.
    CALL FUNCTION 'JOB_OPEN'
      EXPORTING
        jobname          = name
      IMPORTING
        jobcount         = number
      EXCEPTIONS
        cant_create_job  = 1
        invalid_job_data = 2
        jobname_missing  = 3
        OTHERS           = 4.
    IF sy-subrc = 0.
      SUBMIT submitable TO SAP-SPOOL
                        SPOOL PARAMETERS print_parameters
                        WITHOUT SPOOL DYNPRO
                        VIA JOB name NUMBER number
                        AND RETURN.
      IF sy-subrc = 0.
        CALL FUNCTION 'JOB_CLOSE'
          EXPORTING
            jobcount             = number
            jobname              = name
            strtimmed            = 'X'
          EXCEPTIONS
            cant_start_immediate = 1
            invalid_startdate    = 2
            jobname_missing      = 3
            job_close_failed     = 4
            job_nosteps          = 5
            job_notex            = 6
            lock_failed          = 7
            OTHERS               = 8.
        IF sy-subrc <> 0.
        ENDIF.
      ENDIF.
    ENDIF.
    Regards.

  • Passing select-options values using call transaction method

    Hi Experts,
    I have a scenario in which i have three fields BUKRS,WERKS and MATKL in an internal table i_tab and I have MATNR as a selection-option.
    After this I have to use call transaction <tcode> for all the line items in the internal table and the MATNR select-option values I have to pass directly for each line of i_tab using call transaction method.
    TYPES:  BEGIN OF t_tab,
              bukrs TYPE bukrs,
              werks TYPE werks_d,
              matkl TYPE matkl,
            END OF t_tab.
    DATA:  w_tab TYPE t_tab,
                i_tab      TYPE STANDARD TABLE OF t_tab.
    SELECT-OPTIONS: s_matnr FOR marc-matnr.
    Now I am putting a loop at i_tab and have to use CALL TRANSACTION <TCODE> for each line with the SELECT-OPTIONS for MATNR.
    Please tell me whether we can pass multiple ranges for MATNR using call transcation method.
    for example there can be multiple single values/multiple ranges/excluded ranges for MATNR. so please suggest me how tho achieve this sceanrio using CALL transaction method of BDC.
    Thanks a lot.
    Regards,
    Krishan

    Hi Krishan,
    For the Call transaction TCODE there is extension ....OPTIONS from OPT. Just Check it out. I think it is possible like this.
    ... OPTIONS FROM opt
    *Effect*
    This addition gives you control using the values of the components of the structure opt, which must be of the Dictionary type CTU_PARAMS. The components have the following meaning:
    DISMODE
    Processing mode (comparable with the MODE addition)
    UPDMODE
    Update mode (comparable with the UPDATE addition)
    CATTMODE
    CATT mode (controlling a CATT procedure)
    The CATT mode can have the following values:
    ' ' No CATT procedure active
    'N' CATT procedure without single screen control
    'A' CATT procedure with single screen control
    DEFSIZE
    Use standard window size
    RACOMMIT
    COMMIT WORK does not end CATT procedure
    NOBINPT
    No batch input mode, that s SY-BINPT = SPACE.
    NOBIEND
    No batch input mode after BDC data has been read
    The components DEFSIZE , RACOMMIT, NOBINPT, NOBIEND always take the following values:
    'X' Yes
    ' ' No
    If the OPTIONS addition is omitted, the following settings are valid for the control parameters:
    DISMODE from the MODE addition
    UPDMODE
    from the UPDATE addition
    CATTMODE
    No CATT procedure active
    DEFSIZE
    Do not use standard window size
    RACOMMIT
    COMMIT WORK ends procedure successfully
    NOBINPT
    Batch input mode, that is SY-BINPT =X.
    NOBIEND
    Batch input mode also active after BDC data has been read
    Regards,
    Swapna.

  • Supress message in status bar when using Call Transaction

    Hi,
    I have designed a RF program and I am using a BDC program to call LT11 transaction for confirming TO.
    As this was a Flowrack storage type we will assign Source HU during TO confirmation. So I went for a BDC.
    But after confirmation I am getting a Status message TO XXX confirmed in the status bar which is also displayed in the RF Screen for every line item confirmed. I want to supress this message.
    I am getting this message in the messtab table as well by using Call Transaction. So how can I supress this message in Status bar.
    Please let me know for more information.
    Thanks,
    Manoj.

    >
    kaka79 wrote:
    > I have designed a RF program and I am using a BDC program to call LT11 transaction for confirming TO.
    > But after confirmation I am getting a Status message TO XXX confirmed in the status bar which is also displayed in the RF Screen for every line item confirmed. I want to supress this message.
    > I am getting this message in the messtab table as well by using Call Transaction. So how can I supress this message in Status bar.
    The CTU (CALL TRANSACTION ... USING ...) captures and stores all the messages into the message internal table (... MESSAGES INTO itab ...), but they are not displayed. So, if one of them appears in the status bar, it's because there is an additional MESSAGE ... statement in the program using the CTU. So look at it and add a condition before the MESSAGE statement to not output this exact message (click the message on status bar to get the message number, or debug the program to get it from the message internal table).

  • Can we create multiple session in BDC using Call session?

    Hi Experts,
    Can we create  multiple sessions in BDC using Call Session?
    Scenario:
    Program has to upload 1 million records,so can we programmatically create multiple sessions such that after every 50thousand records we create a different session.
    For moment due to large number of records BDC DYNPRO and BDC Field are unable to hold the large number of records,due to which we get a Out of memory error.
    Thanks in advance.
    Shilpa

    Hi
    If ITAB is your table with the data to be transfered:
    Open the first session:
    CALL FUNCTION 'BDC_OPEN_GROUP'.........
    IF SY-SUBRC = 0.
      FL_OPEN = 'X'.
    ENDIF.
    LOOP AT ITAB.
    IF FL_OPEN = SPACE.
    Create new session
    CALL FUNCTION 'BDC_OPEN_GROUP'.........
    IF SY-SUBRC = 0.
       FL_OPEN = 'X'.
    ENDIF.
    ENDIF.
    Here elaborate your data and fill BDCDATA
    Insert the transaction:
    CALL FUNCTION 'BDC_INSERT'
    IF SY-SUBRC = 0.
      COUNT = COUNT + 1.
      IF COUNT = COUNT_MAX.
        COUNT = 0.
    Close the session
        IF FL_OPEN = 'X'.
          CALL BDC_CLOSE_GROUP
          IF SY-SUBRC = 0.
            FL_OPEN = SPACE.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDLOOP.
    Max

  • Can we use Call transaction and session method in same program ?

    Hi experts,
                     Is it suggested to use call Transaction and session method in the same Program ?
                     i have a doubt , why cant we use multiple call transactions in same program instead of session method if we have multiple transaction updations ?

    Hi Dengyong Zhang,
    we can use the call transation and session method in same program.
    However for better performance it's benificial to use call trasaction method of BDC. but if u want to upload very large amount of data then Session method is more preferable to use.
    Session method is one of the method of BDC.
    U can also use BAPI to upload the data in SAP but it's a different concept than BDC. Performance wise BAPI is more advantageous than BDC.

  • Please tell me the cases when I will use Call transaction/ Batch Session.

    Can you please tell me when I will use Call transaction or  Batch Session in the time of uploading data through BDC.
    Regards,
    Subhasish

    Hi subhasish,
    1. One of the main criteria is
    2. If error handling facility is required, then batch session is the best,
      otherwise if we use call transaction, then error handling code,
      has to be written in the program itself.
    3. Batch session provides lot of facilities to the user.
    regards,
    amit m.

  • Updating custom table using call transaction

    How to update a custom table using Call Transaction method. How can we use Table control (Module Pool) for this purpose).

    Vignesh,
    Create a table maintenance transaction for ur custom tables. Check this link for ref...
    http://allaboutsap.blogspot.com/2007/04/table-maintenance-in-sap-step-by-step.html
    And create a BDC recording and code a program accordingly...
    regards,
    karthik

  • Can i use call transaction in BAPI

    Can I use call transaction in a BAPI and create master record.

    There is no reason AS LONG AS this BAPI will not accessed from an external system.  BAPIs are intended to accessed by external systems... otherwise, creating a Func Module is just fine.
    I would be cautious with using BDCs.  SAP continually changes screens with each upgrade.  When you use BDCs, you are TOTALLY dependent on those screen fields.  And when an upgrade changes a screen, you have extra work to do to fix your BDC in the new version.
    By using a BAPI or a Func Mod, your impact from an upgrade is greatly reduced.
    Remember to reward points accordingly.
    Message was edited by: John Jakabcsin
    Message was edited by: John Jakabcsin

Maybe you are looking for

  • How to use return value from TestComplete ( using COM) as a variable in the conditional statement (e.g. while loop) in TestStand

    Hi, I have setup a COM interface for TestStand(TS) to run certain scripts in TestComplete (TC).  Normally, when TestComplete finishes executing the script, it returns a 0 or 1 to denote pass/fail in the TestStand step (e.g String value test step).  T

  • Flash 5 speed in movieclip duplication

    this is my situation: I have a "cube" matrix containing boolean values: its dimension is 10 x 10 x 10. I have an isometric cube movieclip: it rapresents a matrix cell. In the render function of the matrix i clicle on the 3 dimensions X, Y, Z; if the

  • Master/Detail Combobox

    Hello, I've got three ViewObjects: DataView, MasterView and DetailView. DataView has references to MasterView and DetailView. Zero to n Positions in DetailView have also a reference to MasterView (like in every Master-/DetailView association). Now I'

  • Pre-Populated Tabular Form

    Hi Gurus, I am trying to create a score card type form. The names of the teams are held in Table1 the Score Values (which are locked to predefined values) are in Table2. I would like to have a form that takes the teams and creates a tabular form with

  • Destroy problem!

    I have a Java program that runtime exec's several other Java programs. I'm looking for a way to destroy the java process. I try to call destroy method but it doesn't work, the process continue executing. public String start() { rt = Runtime.getRuntim