Diffrent screens in batch input session

hi all,
In session method while processing the session in sm35 (ECC6.0) i am getting different screen for transaction FK01.
i  get it in call transaction metod by passing the recording parameters in ctu_params.
in session there is option to pass recording parameters, but after creating the session problem is coming.

We have to select Central address management in the initial screen of the transaction

Similar Messages

  • Update error after all screens in Batch Input session is processed.

    Hi,
    I have a problem in processing the batch input session.  The batch input session is calling F-02 to post less than 999 line items (around 700) to a single financial document. The batch session is expected to have an error because tax code is missing for some line items but even after the tax code is added manually onto the batch screen, the update error message still happened at the end of the process. In the log, it said "System error: Error when inserting table BSET". Same account has been used to post 10+ line items manually with F-02, no error occurred.
    Does anyone have any idea what possible reason could cause the update error in updating the tax table?

    Hi Rob,
    That is exactly what happened to us. We already had note 521481 in our system but we also have OSS 558288 in which causes our scenario not generating an error message but an update termination instead.
    The other thing I found out is once tax code is entering in one of the line items, it will be copied to all the succeeding line items even for the accounts that does not require a tax code (i.e. posting without tax code allowed checked) which will significantly increase the amounts of data posted into BSET.
    We fixed the issue by changing the BDC program so it will take out the auto-copied tax code from other line items. Issue is solved. Thank you. I also rewarded the points.
    Minami

  • BDC programming using Batch input Session.

    Hello Experts.
    I'm an ABAP beginner. I've benn practicing BDC programming using Batch input Session
    at the moment.
    This is the program that upload Local file which has plural records, and put the records into a Session.
    These are the records.
    413459,KIM EI HWAN121                ,19810607,MIADONG1234
    423459,KIM EI HWAN122                ,19810607,MIADONG1235
    433459,KIM EI HWAN123                ,19810607,MIADONG1236
    443459,KIM EI HWAN124                ,19810607,MIADONG1237
    453459,KIM EI HWAN125                ,19810607,MIADONG1238
    463459,KIM EI HWAN126                ,19810607,MIADONG1239
    I succeeded making Session.
    However, for some reaseon, every record in the Session has got the same, value which is the first record.
    Why is this happening? And How can I correct the code below?
    REPORT ZBCUSER002_BATCH NO STANDARD PAGE HEADING
                            LINE-SIZE 255
                            MESSAGE-ID ZBATCH.
    = Types definition ===================================================
    TYPES: BEGIN OF TYP_LOCAL,               "For Local file upload
             RECORD(200) TYPE C,
           END   OF TYP_LOCAL.
    = Internal table definition ==============================================
    DATA: BEGIN OF BDC_TAB OCCURS 0.        "BDCDATA itab
            INCLUDE STRUCTURE BDCDATA.
    DATA: END   OF BDC_TAB.
    DATA: BEGIN OF MESSAGE_BDC OCCURS 0.    "Message itab
            INCLUDE STRUCTURE BDCMSGCOLL.
    DATA: END   OF MESSAGE_BDC.
    DATA: TBL_LOCAL TYPE STANDARD TABLE OF TYP_LOCAL,  "Local file itab
          F_TBL     TYPE FILETABLE.                    "FILETABLE fot local
    = Structure table definition =========================================
    DATA: STR_F_TBL LIKE LINE OF F_TBL,                "FILETABLE structure
          STR_LOCAL TYPE TYP_LOCAL.                    "Local file structure
    = Variable definition ================================================
    DATA: LV_RC     TYPE I,                            "Method parameter
          ENUMBER   TYPE ZT601-ENUMBER,                "Employee number
          NAME      TYPE ZT601-NAME,                   "Employee name
          BIRTH     TYPE ZT601-BIRTH,                           "Birthday
          HOMETOWN  TYPE ZT601-HOMETOWN,                        "Hometown
          SYSVAL    TYPE SY-SUBRC.                     "System valuible
    = Constants definition ===============================================
    CONSTANTS: TBL_NAME(10) TYPE C VALUE 'ZT601'.      "Table name ZT601
    = Parameters definition ==============================================
    PARAMETERS: F_NAME      TYPE RLGRAP-FILENAME OBLIGATORY,    "File path
                EXECMODE(1) TYPE C.                    "Execute mode
    INITIALIZATION
    *----- Initialize all valuables, structures and internal tables
    CLEAR: LV_RC,
           STR_F_TBL,
           STR_LOCAL,
           ENUMBER,
           NAME,
           BIRTH,
           HOMETOWN.
    REFRESH: F_TBL,
             TBL_LOCAL.
    AT SELECTION-SCREEN
    *----- When the button next to Parameter 'F_NAME',
    *----- File dialog open.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR F_NAME.
      CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
        EXPORTING
          WINDOW_TITLE            = 'SELECT FILE'
          DEFAULT_FILENAME        = '*.TXT'
       CHANGING
         FILE_TABLE               = F_TBL
         RC                       = LV_RC
        EXCEPTIONS
          FILE_OPEN_DIALOG_FAILED = 1
          CNTL_ERROR              = 2
          OTHERS                  = 3
    *----- system valiable check.
    *----- If done properly,
    *----- Put the path into the File path parameter
      IF SY-SUBRC = 0.
        READ TABLE F_TBL INTO STR_F_TBL INDEX 1.
        F_NAME = STR_F_TBL.
    *----- If not done properly, show message
    *----- An error occured while getting file path then end program
      ELSE.
        MESSAGE E000.
      ENDIF.
    *----- Execute code can only be A or N.
    AT SELECTION-SCREEN ON EXECMODE.
      IF EXECMODE <> 'A' AND EXECMODE <> 'N'.
        MESSAGE E001.
      ENDIF.
    START-OF-SELECTION
    START-OF-SELECTION.
    *----- Upload Local file of file path parameter.
      CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
                FILENAME                = F_NAME
                FILETYPE                = 'ASC'
           TABLES
                DATA_TAB                = TBL_LOCAL
           EXCEPTIONS
                FILE_OPEN_ERROR         = 1
                FILE_READ_ERROR         = 2
                NO_BATCH                = 3
                GUI_REFUSE_FILETRANSFER = 4
                INVALID_TYPE            = 5
                OTHERS                  = 6.
    *----- System valiable check.
    *----- If not done properly, show an error message
    *----- An error occured while uploading local file then end program
      IF SY-SUBRC <> 0.
        MESSAGE E002.
      ENDIF.
      PERFORM BDC_OPEN.
    *----- Loop Internal table
      LOOP AT TBL_LOCAL INTO STR_LOCAL.
    *----- Spilt the file record and put them into each valiable.
        SPLIT STR_LOCAL AT ',' INTO  ENUMBER
                                     NAME
                                     BIRTH
                                     HOMETOWN.
    *----- Data check Function module
        CALL FUNCTION 'DATE_CHECK_PLAUSIBILITY'
             EXPORTING
                  DATE                      = BIRTH
             EXCEPTIONS
                  PLAUSIBILITY_CHECK_FAILED = 1
                  OTHERS                    = 2.
    *----- When error occurs while checking date, show an error message.
    *----- (&1) is not date
        IF SY-SUBRC <> 0.
          MESSAGE E003 WITH BIRTH.
        ENDIF.
    *-- The first screen of SE11
    *----- Screen number 0102 of program id SAPMSRD0
        PERFORM BDC_DYNPRO      USING 'SAPMSRD0' '0102'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'RSRD1-TBMA_VAL'. "Field on Cursor
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=SHOW'.          "Display button
        PERFORM BDC_FIELD       USING 'RSRD1-TBMA'
                                      'X'.
        PERFORM BDC_FIELD       USING 'RSRD1-TBMA_VAL'
                                       TBL_NAME.                "ZT601
    *-- Table definition screen
    *----- Screen number 2000 of program id SAPLSD02
        PERFORM BDC_DYNPRO      USING 'SAPLSD02' '2000'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'DD02D-TABCLTEXT'.  "Field on Cursor
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=TDED'.            "Create entry
        PERFORM BDC_FIELD       USING 'BDC_SUBSCR'
                                      'SAPLSD02'.
        PERFORM BDC_FIELD       USING 'BDC_SUBSCR'
                                      'SAPLSED5'.
    *-- Data input screen
    *----- Screen number 0101 of program /1BCDWB/DBZT601
        PERFORM BDC_DYNPRO      USING '/1BCDWB/DBZT601' '0101'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'ZT601-CRUSER'.    "Field on Cursor
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=SAVE'.                  "Save
        PERFORM BDC_FIELD       USING 'ZT601-MANDT'
                                      SY-MANDT.                 "Client
        PERFORM BDC_FIELD       USING 'ZT601-ENUMBER'
                                      ENUMBER.           "Employee number
        PERFORM BDC_FIELD       USING 'ZT601-NAME'
                                      NAME.              "Employee name
        PERFORM BDC_FIELD       USING 'ZT601-BIRTH'
                                      BIRTH.                    "Birthday
        PERFORM BDC_FIELD       USING 'ZT601-HOMETOWN'
                                      HOMETOWN.                 "Hometown
        PERFORM BDC_FIELD       USING 'ZT601-CRDATE'
                                      SY-DATUM.          "System date
        PERFORM BDC_FIELD       USING 'ZT601-CRTIME'
                                      SY-UZEIT.          "System time
        PERFORM BDC_FIELD       USING 'ZT601-CRUSER'
                                      SY-UNAME.          "System user
    *-- Data input screen (After input)
    *----- Screen number 0101 of program /1BCDWB/DBZT601
        PERFORM BDC_DYNPRO      USING '/1BCDWB/DBZT601' '0101'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '/EBACK'.                 "Back
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'ZT601-CRUSER'.    "Field on Cursor
    *-- Table definition screen]
    *----- Screen number 2000 of program SAPLSD02
        PERFORM BDC_DYNPRO      USING 'SAPLSD02' '2000'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'DD02D-TABCLTEXT'.  "Field on Cursor
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=WB_BACK'.               "Back
    *-- The first screen of SE11
    *----- Screen number 0102 of program SAPMSRD0
        PERFORM BDC_DYNPRO      USING 'SAPMSRD0' '0102'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'RSRD1-TBMA_VAL'.   "Field on Cursor
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=BACK'.
        PERFORM BDC_FIELD       USING 'RSRD1-TBMA'
                                      'X'.
        PERFORM BDC_FIELD       USING 'RSRD1-TBMA_VAL'
                                      TBL_NAME.
        PERFORM BDC_INSERT.
      ENDLOOP.
      PERFORM BDC_CLOSE.
          FORM BDC_DYNPRO                                               *
          Put Program-Id, Dynpro screen number, Start point
          into DBCDATA
    -->  PROGRAM                                                       *
    -->  DYNPRO                                                        *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDC_TAB.
      BDC_TAB-PROGRAM  = PROGRAM.
      BDC_TAB-DYNPRO   = DYNPRO.
      BDC_TAB-DYNBEGIN = 'X'.
      APPEND BDC_TAB.
    ENDFORM.
          FORM BDC_FIELD                                                *
          Put Field Name and Value into BDCDATA
    -->  FNAM                                                          *
    -->  FVAL                                                          *
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR BDC_TAB.
      BDC_TAB-FNAM = FNAM.
      BDC_TAB-FVAL = FVAL.
      APPEND BDC_TAB.
    ENDFORM.
          FORM bdc_process                                              *
    FORM BDC_OPEN.
      CALL FUNCTION 'BDC_OPEN_GROUP'
           EXPORTING
                CLIENT = SY-MANDT
                GROUP  = 'Testsession'
                KEEP   = 'X'
                USER   = SY-UNAME.
      IF SY-SUBRC <> 0.
        MESSAGE E006 WITH SY-SUBRC.
      ENDIF.
    ENDFORM.
          FORM bdc_insert                                               *
    FORM BDC_INSERT.
      CALL FUNCTION 'BDC_INSERT'
           EXPORTING
                TCODE            = 'SE11'
           TABLES
                DYNPROTAB        = BDC_TAB
           EXCEPTIONS
                INTERNAL_ERROR   = 1
                NOT_OPEN         = 2
                QUEUE_ERROR      = 3
                TCODE_INVALID    = 4
                PRINTING_INVALID = 5
                POSTING_INVALID  = 6
                OTHERS           = 7.
      IF SY-SUBRC <> 0.
        MESSAGE E007 WITH SY-SUBRC.
      ENDIF.
      CLEAR: BDC_TAB.
    ENDFORM.
          FORM bdc_close                                                *
    FORM BDC_CLOSE.
      CALL FUNCTION 'BDC_CLOSE_GROUP'
           EXCEPTIONS
                NOT_OPEN    = 1
                QUEUE_ERROR = 2
                OTHERS      = 3.
      IF SY-SUBRC <> 0.
        MESSAGE E008 WITH SY-SUBRC.
      ENDIF.
    ENDFORM.

    God I forgot to refresh Internal table after putting record into Session.
    Now I'm done.
    You guys be careful too.

  • Creation of batch input session for mass reversal of payment documents

    Hello FI experts,
    There is a business requirement in which the users want to reverse the payments en-masse. This can be achieved by creating a batch input session via a custom program to upload the documents from excel . Then calling FBRA and FB08 to do the resetting and reversal.
    My issue is how to create the batch input session ? Please help.
    Regards,
    Van

    Hi,
    I have got developed such program earlierr.
    You can define your custom program specification as below:-
    (A) Based on the selection screen, the program will read all the records (field document number VBLNR, company code ZBUKR and year from field ZALDT) from table REGUH. (Proposal Run Indicator XVORL should be blank.)
    (B) If Paying company code (REGUH-ZBUKR) is equal to Sending company code (REGUH-ABSBU):-
           Step 1:- For each record of (Payment Document Number (REGUH-VBLNR), Company code (REGUH-ZBUKR), and Fiscal Year (REGUH-ZALDT)) it will call transaction FBRA and will reset the clearing of the document.
           Step 2:- Then call transaction FB08 and pass the data as below:-
                  Document Number     =     Payment Document Number (REGUH-VBLNR)
                  Company Code     =     Company code (REGUH-ZBUKR)
                  Fiscal Year               =     Fiscal Year (REGUH-ZALDT)
                  Reversal Reason, Posting Date and Posting period will be defaulted from the selection screen of out program.
    (C) If Paying company code (REGUH-ZBUKR) is not equal to Sending company code (REGUH-ABSBU):-
           Step 1:- For each record of (Payment Document Number (REGUH-VBLNR), Company code (REGUH-ZBUKR), and Fiscal Year (REGUH-ZALDT)) it will call transaction FBRA and will reset the clearing of the document.
            Step 2:- for each record of (Payment Document Number (REGUH-VBLNR), Company code (REGUH-ZBUKR), and Fiscal Year (REGUH-ZALDT)) get the cross company code document number (BKPF-BVORG) and
                   (ii) Then find out the Document number (BKPF-BELNR) from BKPF matching BUKRS = Sending company code (REGUH-ABSBU) and GJAHR = Fiscal Year (REGUH-ZALDT) and BVORG = cross company code document number (BKPF-BVORG) as obtained above in
                  (iii) Then call transaction FBRA and will reset the clearing of the document passing BKPF-BELNR, BKPF-BUKRS and BKPF-GKAHR as obtained in (ii) above.
           Step 3:- Then call transaction FBU8 and pass the data as below:-
                  Cross CC Doc. Number=     Blank
                  Document Number     =     Payment Document Number (REGUH-VBLNR)
                  Company Code     =     Company code (REGUH-ZBUKR)
                  Fiscal Year               =     Fiscal Year (REGUH-ZALDT)
                  Reversal Reason, Posting Date and Posting period will be defaulted from the selection screen of out program.
    Regards,
    Gaurav

  • How to see the Batch input session name in SM35 with User name.

    Hi
    Yesterday,User has created one Batch input session from FBWE and selected process button after that display errors only tick mark in SM35. Then the system displayed one error message"No Batch input data for screen SAPMF05A 0700".After that he came out from the screen. He dont know what happened.
    Today we have verified in SM35. But there is no batch input session with his name. We have verified in incorrect screens and every thing in SM35.
    We have verified in Table 'T045DTA'. There are some entries are there.
    We dont know the session name also.
    How we can find the session name created by the User.
    We have not deleted any thing.
    Please help me
    Thanks
    Ravi.

    Hi Ravi,
    Yes, you should be able to create a new batch job for FBWE. You can see your own batch sessions from SYSTEM ==> OWN JOBS
    Regards,
    Mike

  • Stopping a batch Input  session

    Hi,
    I need to stop a job which is being processed. Please tel me how do i acheive this.
    I've tried SM37 & went for release but it says 'cannot be done because of the stattus it has'
    I've also tried to stop the batch using the push button in Appl tool bar in SM37 but still i have the same message.

    Hi..,
    In the BDC_OKCODE,
    give <b>/n</b> to stop that particular transaction...
    give <b>/bend</b> to quit the entire Session....
    You can interrupt the interactive execution of a session by entering the<b> /bend</b> OK code on any screen. <b>/bend </b>terminates the transaction currently being executed in the session and marks the transaction with the status Incorrect. The session is kept in the queue and is displayed in the Errors section of the list. Changes made by the interrupted transaction are rolled back as long as the transaction uses only the R/3 update facility. Direct database changes made by the transaction are not rolled back.
    You can use <b>/bend</b> when testing sessions. For example, you may wish to run the first transactions of a large session in display-all mode to make sure that the session has been generated correctly.
    You can restart processing of a transaction by entering the <b>/bbeg</b> OK code on any screen. <b>/bbeg </b>terminates the transaction that is currently being processed and then restarts the transaction fresh, as it is recorded in the batch input session. Any changes made by the transaction are rolled back, as long as they were made only by way of the R/3 update facility. Changes made directly to the database are not rolled back.
    You can delete a transaction from a session during interactive execution by entering the <b>/bdel</b> OK code. The transaction is removed from the session. The deleted transaction cannot be run even if you restart the session, and you cannot take back the deletion.
    regards,
    sai ramesh
    Message was edited by:
            Sai ramesh

  • SM35-Downloading the Logs for the Batch-Input Session

    Hi Folks,
    I have above 300 Batch-Input sessions imported, and most of them ended with errors, right now I am copying the errors from line to line into excel but this is time consuming. Does any body has a solution to download the logs created through the Batch-Input session into excel sheets. So that I can send through mail to my customer.
    Any help would be appriciated.
    Thanks in Advance.
    Sanjeev.

    Okay... I have one more crude way of downloading the log but this will only work if you have the new abap debugger available..
    1. Go to SM35
    2. Select the session and Click the log button
    3. Select the log you want to download, activate debugging and choose display
    4. Put a breakpoint at the statement "Call screen 1400."
    5. Select "Switch to New ABAP debugger" from the Debugging option in the toolbar
    6. Go to the "Tables" tab and enter BDCLM and hit enter
    7. Click the "Services of the tool" option. This is the last of the 6 buttons available on the Tables tab besides the table control which displays the contents of internal table BDCLM
    8. Choose "Save to local file" option on the following popup
    Pretty lengthy and cumbersome approach but I think this is the only option available if you cannot migrate the program to production.
    -Kiran

  • How to run the Batch input session(SM35) in background thru Report program

    Hi Experts,
    I am working in one modification report requirement ,the report is Mass upload will update and run the file via batch input session. The client requirement is to implement the report execution in background mode , the batch input session will process automatically (ie. the job runs the batch input session in background and process the session ends).
    Currently, the report calls SM35 to write a batch input session and the user manually selects the session and record the transactions.
    Once the Transaction enters and the selection-screen inputs are given, then the transaction executed in background mode and all the above batch input process to be implemented.
    Please advise and guide me, how to proceed.
    I need your guidance to proceed via Call transaction using bdcdata statement, if it can be achieved the requirement.
    Thanks & Regards
    San.

    Hi Arabind Prasad,
    Thanks for your inputs.
    I know the process of the report Execution in background and job steps.
    I want the inputs for how to upload thru Batch input session in background job and the session should also processed automatically
    Currently the report logic declared like call transaction 'SM35' and skip first screen.Once the report (tcode) executed (not in background) It writes one session in SM35. The user should select the session and process the transaction manually.
    The new requirement is, if the report (tcode) executes in background mode...what and how the batch input session should be declared and how it process automatically (like you said mode 'N').
    Hope I am clear in my query.
    Please advise.
    Regards
    San.
    Edited by: San Learner on Mar 1, 2011 7:16 PM

  • LSMW- Batch Input session getting error

    Hi All,
    I created LSMW object for Tcode KO01 and its creating the Internal order as expceted.But even after creating the document the Batch Input session status is showing incorrect.No messages are also displayed in the log.
    Please let me know why this is happening.
    Thanks in Advance,
    Savitha

    Hi,
    Detail Error Message is as follows:
    No batch input data for screen SAPLIMR0 1110
    Message no. 00344
    Diagnosis
    The transaction sent a screen that was not expected in the batch input session and which therefore could not be supplied with data.
    Possible reasons:
    1. The batch input session was created incorrectly. The sequence of screens was recordly incorrectly.
    2. The transaction behaves differently in background processing in a batch work process than when running in dialog (SY-BATCH is queried and changes the screen sequence).
    3. The transaction has undergone user-specific Customizing and therefore certain screens may be skipped or processed differently, according to the current user. If the person who created a batch input session is not the same as the person now processing it, this problem may occur frequently.
    System Response
    None.
    Procedure
    For 1: Either re-create the session or process it in expert mode. Correct the batch input program.
    For 2. It is very difficult to analyze this problem, particularly in the case that the screen sequence or the display-only options of fields differ according to whether the transaction is being processed in the background or as an online dialog. It could also be that this kind of transaction cannot run with batch input.
    For 3: Have the creator of the session process it. If no error occurs now, then this is a program with user-specific Customizing.
    Regards,
    ababfk

  • Please help  me with some questions with batch input session?

    hello everyone.
      I come to some questions  like
    1 What is a batch input session ,
    2  What is the alternative to batch input session?
    3  An ABAP program creates a batch input session.   We need to submit the program and the batch session in back ground. How to do it? 
       would you please help me with the questions, couldn't thank you more.
       Best regards
                                                                          Frank

    Hi
    Batch Input Session:
    BATCH INPUT SESSION is an intermediate step between internal table
    and database table. Data along with the action is stored in session
    ie data for screen fields, to which screen it is passed, program
    name behind it, and how next screen is processed.
    Three processing modes of executing Batch Input Session :-
    Run Visibly : You can correct faulty transactions online & work step-by-step through  the transactions not yet executed.
    Display Errors only : You can correct faulty transactions online.   Transactions not yet executed, but without error, run in the background.
    Run in Background .
    2) What is the alternative to batch input session?
    Call transaction.
    3) An ABAP program creates a batch input session. We need to submit the program and the batch session in back ground. How to do it?
    go to SM36 and create background job by giving
         job name,job class and job steps (JOB SCHEDULING)

  • Batch Input Session for Errors

    Hello
    I'm running a Batch Input (in a FM) and I want to create a session for records with errors. In case of error (output parameter of the FM subrc NE 0) I send it to that session for later running.
    Can you explain how do I do this? Thanks!

    hi,
    Look at the sample program
    REPORT Z_BDC_CUSTOMER_R07
           NO STANDARD PAGE HEADING LINE-SIZE 255.
    INCLUDE Z_CUSTOMER_BDC_R02.
    *-----AT SELECTION-SCREEN
    AT SELECTION-SCREEN.
      IF SY-UCOMM = 'ONLI'.
    *-----group and user must be filled to create a session
        IF SESSION = 'X' AND
           GROUP = SPACE OR USER = SPACE.
          MESSAGE E613(MS).
        ENDIF.
    *----Presentation File name should be entered
        IF SESSION = 'X' AND RB_PRE = 'X'
                         AND P_FILE = '' .
          MESSAGE E004(ZROJA).
        ELSEIF CTU = 'X' AND RB_PRE = 'X'
                         AND P_FILE = '' .
          MESSAGE E004(ZROJA).
        ENDIF.
    *----Application File name should be entered
        IF SESSION = 'X' AND RB_APP   = 'X'
                         AND P_FILE_A = '' .
          MESSAGE E004(ZROJA).
        ELSEIF CTU = 'X' AND RB_APP = 'X'
                   AND P_FILE_A = '' .
          MESSAGE E004(ZROJA).
        ENDIF.
      ENDIF.
    *-----AT SELECTION-SCREEN OUTPUT
    AT SELECTION-SCREEN OUTPUT.
    *----When file from Presentation server is selected
      IF RB_PRE = 'X'.
    *----To make the application server inactive
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'AAA'.
            SCREEN-ACTIVE = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ELSE.
    *----When file from Presentation server is selected
        RB_APP = 'X'.
    *----To make the application server inactive
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'BBB'.
            SCREEN-ACTIVE = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.
    *-----AT SELECTION-SCREEN ON VALUE-REQUEST
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE_A.
      CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
        EXPORTING
          I_LOCATION_FLAG = 'A'
          I_SERVER        = ' '
          FILEOPERATION   = 'R'
        IMPORTING
          O_PATH          = P_FILE_A
        EXCEPTIONS
          RFC_ERROR       = 1
          ERROR_WITH_GUI  = 2
          OTHERS          = 3.
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *-----AT SELECTION-SCREEN ON VALUE-REQUEST
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    *-----Function module for value-request
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          PROGRAM_NAME  = SYST-CPROG
          DYNPRO_NUMBER = SYST-DYNNR
          FIELD_NAME    = ' '
        IMPORTING
          FILE_NAME     = V_FILE_NAME.
    *----Assigning the flatfile to parameter
      P_FILE        = V_FILE_NAME.
    *-----START-OF-SELECTION
    START-OF-SELECTION.
      DATA: FILENAME TYPE STRING.
    *----When file from Presentation Server is selected
      IF RB_PRE = 'X'.
        FILENAME = P_FILE.
    *-----Function module to upload data from the presentation server
        CALL FUNCTION 'GUI_UPLOAD'
          EXPORTING
            FILENAME                = FILENAME
            FILETYPE                = 'ASC'
            HAS_FIELD_SEPARATOR     = 'X'
          TABLES
            DATA_TAB                = IT_KNA1
          EXCEPTIONS
            FILE_OPEN_ERROR         = 1
            FILE_READ_ERROR         = 2
            NO_BATCH                = 3
            GUI_REFUSE_FILETRANSFER = 4
            INVALID_TYPE            = 5
            NO_AUTHORITY            = 6
            UNKNOWN_ERROR           = 7
            BAD_DATA_FORMAT         = 8
            HEADER_NOT_ALLOWED      = 9
            SEPARATOR_NOT_ALLOWED   = 10
            HEADER_TOO_LONG         = 11
            UNKNOWN_DP_ERROR        = 12
            ACCESS_DENIED           = 13
            DP_OUT_OF_MEMORY        = 14
            DISK_FULL               = 15
            DP_TIMEOUT              = 16
            OTHERS                  = 17.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
      ELSE.
    *----Upload the File from Application Server
        OPEN DATASET P_FILE_A FOR INPUT IN TEXT MODE ENCODING DEFAULT.
    *-----to display an error if the file is not in application server
        IF SY-SUBRC NE 0.
          MESSAGE E006(ZROJA).
        ELSE.
          DO.
            READ DATASET P_FILE_A INTO X_KNA1.
            IF SY-SUBRC EQ 0.
              APPEND X_KNA1 TO IT_KNA1.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
        ENDIF.
        CLOSE DATASET P_FILE_A.
      ENDIF.
    *-----To open a batchinput session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_OPEN_GROUP'
          EXPORTING
            CLIENT              = SY-MANDT
            GROUP               = GROUP
            KEEP                = KEEP
            USER                = USER
            PROG                = SY-CPROG
          EXCEPTIONS
            CLIENT_INVALID      = 1
            DESTINATION_INVALID = 2
            GROUP_INVALID       = 3
            GROUP_IS_LOCKED     = 4
            INTERNAL_ERROR      = 6
            QUEUE_ERROR         = 7
            RUNNING             = 8
            SYSTEM_LOCK_ERROR   = 9
            USER_INVALID        = 10
            OTHERS              = 11.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
      ENDIF.
    *-----Filling the BDCDATA using the Internal Table
      LOOP AT IT_KNA1 INTO X_KNA1.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0100'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'RF02D-KTOKD'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '/00'.
        PERFORM BDC_FIELD       USING 'RF02D-KUNNR'
                                      X_KNA1-KUNNR.
        PERFORM BDC_FIELD       USING 'RF02D-KTOKD'
                                      X_KNA1-KTOKD.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0110'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'KNA1-SPRAS'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '/00'.
        PERFORM BDC_FIELD       USING 'KNA1-NAME1'
                                      X_KNA1-NAME1.
        PERFORM BDC_FIELD       USING 'KNA1-SORTL'
                                      X_KNA1-SORTL.
        PERFORM BDC_FIELD       USING 'KNA1-ORT01'
                                      X_KNA1-ORT01.
        PERFORM BDC_FIELD       USING 'KNA1-PSTLZ'
                                      X_KNA1-PSTLZ.
        PERFORM BDC_FIELD       USING 'KNA1-LAND1'
                                      X_KNA1-LAND1.
        PERFORM BDC_FIELD       USING 'KNA1-SPRAS'
                                      X_KNA1-SPRAS.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0120'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'KNA1-LZONE'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '/00'.
        PERFORM BDC_FIELD       USING 'KNA1-LZONE'
                                      X_KNA1-LZONE.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0125'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'KNA1-NIELS'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '/00'.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0130'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'KNBK-BANKS(01)'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=ENTR'.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0340'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'RF02D-KUNNR'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=ENTR'.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0370'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'RF02D-KUNNR'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=ENTR'.
        PERFORM BDC_FIELD       USING 'KNA1-CIVVE'
                                      'X'.
        PERFORM BDC_DYNPRO      USING 'SAPMF02D' '0360'.
        PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                      'KNVK-NAMEV(01)'.
        PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                      '=ENTR'.
    *----If Session is selected
        IF SESSION = 'X'.
    *----To insert data into batch input session
          CALL FUNCTION 'BDC_INSERT'
            EXPORTING
              TCODE     = 'XD01'
            TABLES
              DYNPROTAB = IT_BDCDATA.
          REFRESH IT_BDCDATA.
          AT LAST.
            SKIP.
            WRITE:/ TEXT-001.
          ENDAT.
        ELSE.
    *----Calling the transaction
          CALL TRANSACTION 'XD01' USING IT_BDCDATA
                                  MODE     CTUMODE
                                  UPDATE   CUPDATE
                                MESSAGES INTO IT_BDCMSGCOLL.
          CLEAR IT_BDCDATA.
          REFRESH IT_BDCDATA.
        ENDIF.
      ENDLOOP.
    *----If Session is Selected
      IF SESSION = 'X'.
    *----To close the session
        CALL FUNCTION 'BDC_CLOSE_GROUP'
          EXCEPTIONS
            NOT_OPEN    = 1
            QUEUE_ERROR = 2
            OTHERS      = 3.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
      ENDIF.
    *-----END-OF-SELECTION
    END-OF-SELECTION.
    *----To display the success messages
      LOOP AT IT_BDCMSGCOLL INTO X_BDCMSGCOLL WHERE MSGTYP = 'S' .
    *-----If Message Type Differs
        ON CHANGE OF X_BDCMSGCOLL-MSGTYP.
          WRITE:/ TEXT-002.
          SKIP.
          ULINE (58).
          WRITE:/01 SY-VLINE,02 TEXT-003,
                 14 SY-VLINE,15 TEXT-004,
                 21 SY-VLINE,22 TEXT-005,
                 35 SY-VLINE,36 TEXT-006,
                 58 SY-VLINE,/01 SY-ULINE(58).
        ENDON.
        WRITE:/01 SY-VLINE,02 X_BDCMSGCOLL-MSGTYP,
               14 SY-VLINE,15 X_BDCMSGCOLL-TCODE,
               21 SY-VLINE,22 X_BDCMSGCOLL-MSGV1,
               35 SY-VLINE,36 TEXT-007,
               58 SY-VLINE,/01 SY-ULINE(58).
      ENDLOOP.
      SKIP 2.
    *----To display the error messages
      LOOP AT IT_BDCMSGCOLL INTO X_BDCMSGCOLL WHERE MSGTYP = 'E'.
    *-----If Message Type Differs
        ON CHANGE OF X_BDCMSGCOLL-MSGTYP.
          WRITE:/ TEXT-008.
          SKIP.
          ULINE (58).
          WRITE:/01 SY-VLINE,02 TEXT-003,
                 14 SY-VLINE,15 TEXT-004,
                 21 SY-VLINE,22 TEXT-005,
                 35 SY-VLINE,36 TEXT-006,
                 58 SY-VLINE,/01 SY-ULINE(58).
        ENDON.
        WRITE:/01 SY-VLINE,02 X_BDCMSGCOLL-MSGTYP,
               14 SY-VLINE,15 X_BDCMSGCOLL-TCODE,
               21 SY-VLINE,22 X_BDCMSGCOLL-MSGV1,
               35 SY-VLINE,36 'Customer Already Exits',
               58 SY-VLINE,/01 SY-ULINE(58).
      ENDLOOP.
    *-----FORM fill_bdcdata
    FORM FILL_BDCDATA USING L_DYNPRO TYPE ANY
                            L_FNAME  TYPE ANY
                            L_FVALUE TYPE ANY.
      CLEAR X_BDCDATA.
      IF L_DYNPRO = 'X'.
        X_BDCDATA-DYNBEGIN = 'X'.
        X_BDCDATA-PROGRAM  = L_FNAME.
        X_BDCDATA-DYNPRO   = L_FVALUE.
      ELSE.
        X_BDCDATA-FNAM = L_FNAME.
        X_BDCDATA-FVAL = L_FVALUE.
      ENDIF.
      APPEND X_BDCDATA TO IT_BDCDATA.
    ENDFORM.                    "BDC_FIELD
    *-----Start new screen
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM  = PROGRAM.
      IT_BDCDATA-DYNPRO   = DYNPRO.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.                    "BDC_DYNPRO
    *-----Insert field
    FORM BDC_FIELD USING FNAM FVAL.
      IF FVAL <> SPACE.
        CLEAR IT_BDCDATA.
        IT_BDCDATA-FNAM = FNAM.
        IT_BDCDATA-FVAL = FVAL.
        APPEND IT_BDCDATA.
      ENDIF.
    ENDFORM.                    "BDC_FIELD

  • Batch input session for 'MB1C' is different from TC 'MB1C'

    hi all,
           I processed my bdc in sm35 in 'process/foreground' mode , and I find the screen is different from front-end screen. what's wrong? In 'SHDB', I already click the 'not a batch input session' checkbox.

    Hi Liang,
    Please check whether you are processing the bdc session for the same transaction 'MB1C' or is it session created for some other transaction. I don't think there can be separate screens for the same.
    Regards,
    Chetan.
    PS:Reward points if this is helpful.

  • Batch input session to FB01 using standard program RFBIBL00

    Hi all,
    I am creating a batch input session using the standard program RFBIBL00 to simulate transaction FB01.
    My problem is when I process the "batch input session" (using transaction SM35), this finish ok, but in the log I am retrieving the following message:
      "Field BSEG-DMBTR. does not exist in the screen SAPMF05A 0300"
    This is a success message and the document is created ok,and the field DMBTR is informed ok.
    Has somebody some idea?.
    Thanks so much in advance for any answer.

    Hi gundam,
    1. Or is there any method to wait here until the process is completed before further processing?
    There is no such direct method to wait.
    2. Immediately after submitting in background,
       we cannot wait
      neither can we LOOP and go on detecting
      whether the b/g process has completed or not !
    3. To over come such problems,
      we have to use another technique.
    4. we have to submit another
       job which will get triggered
       on event SAP_END_OF_JOB
       ie. when the original job will finish,
      our new job will AUTOMATICALLY get triggered,
    5. This new job / program
       will do the FURTHER actions !
    regards,
    amit m.

  • Batch input session for FI postings

    At the time of batch input session processing for FI postings (Transaction FB01), session is terminated due to following error message -
    Message no. 00349
    Field BSEG-PRZNR. does not exist in the screen SAPMF05A 0302
    Batch session has been created using LSMW for data upload. As per field status of the GL account, some of the line items may or may not require an entry for particular field. How can we ignore this error during batch input session when a field is not required to be input for a particular GL account. However, flat file format contains this field because it is required for some of the GL accounts.
    Let me know if you need more information / example. I desperately need a solution.
    Regards,

    Dear Abhilasha,
    Lets assume you have two gl accounts gl1 and gl2. gl1 requires this field to be entered, whereas gl2 does not allow you to enter value.
    In this case, modify your logic as below:
    I believe you can write code in LSMW as well.
    However, if you are using BDC you can write logic as follows:
    if gl_account_field = gl1.
      PERFORM bdc_field       USING 'BSEG-PRZNR'
                                           value.
    endif.
    Hope this will help.
    Regards,
    Naveen.

  • Batch input session Information message

    Hi,
        Is there any way to display information messages in a batch input session. Suppose I have a batch input session running on a particular transaction.If in a particular screen, I want to display an information message to the user that ' Particular sales order has been created on date xx'. Is it possible.
    Thanks &* Regards,
    Vishnu Priya

    Hello,
    It is not possible in the Batch input Session.
    You can do it by <b>Call transaction</b>. But it not possible to give message at particular screen. Becuase we are only passing screen seq and data for the screen.
    Like,
    Call transaction Va01.
    if something is there,
    message I
    endif.
    regards,
    Naimesh

Maybe you are looking for

  • Can I use my Tiger install disc on more than one computer

    I have a Powermac G4 15" and an imac G4 17". The p-mac has Tiger and the Imac has Panther. Can I use the install disc that came with the p-mac to install Tiger on the imac? Thanks for a great forum! G4   Mac OS X (10.4.5)  

  • Question : Different planning strategies in  SAP PP

    Hi PP gurus , Help me in understanding purpose with suitable example different planning strategies say  Strategy 10 , 11 , 20 , 30 , 26 , 40 and 50 . Find below an example for which how the above said strategies will act wrt . Ex :  You have  Unrestr

  • Palm TX won't come on!

    smkranz I am a volunteer, and not an HP employee. Palm OS ∙ webOS ∙ Android

  • Cannot resolve symbol-- data access problem

    hi, everyone, i am new to java... thx for helping me. i have two files 1) dls.java 2) SliderDemo.java in the dls.java i have the following coding: JPanel slider = new SliderDemo(this); slider.framesPerSecond(0); and in the SliderDemo.java i have foll

  • How to make the zoom in/out scale appear in the media browser ?

    How to make the zoom in/out scale appear in the media browser ? My videos only appear as a file list (only the names) and the zoom in/out device is currently not in the media browser...