Batch Input enhancement in ABAP program

Hi,
I want to know if it's possible to enhance an existing batch input session with an ABAP program.
this session is created by a program and I want that another program enhances this session.
thanks in advance for your help.
Franck

This is possible - The BDC data is stored in SAP tables and there are options in SM35 to download a BDC session to a text file, or upload one.  I suggest you have a look at the code behind these options for functions etc that you can use to get an existing session.  Once you have the data you just need to modify it and write it as a new session.
Andrew

Similar Messages

  • Writing a Batch Input or Call Transaction program for transaction code MMAM

    Hi All,
    I'm writing a Batch Input or Call Transaction program for transaction code MMAM (Changing Material Type). The program was able to run but somehow I was not able to capture the log of the output after running MMAM. The log was not part of the SY-MESSAGE so adding in MESSTAB into call transaction doesn't help while BDC session logs shows only the transaction was processed.
    Anyone has encounter such problems before?
    Regards,
    Ramu.

    Hi
    Overview of Batch Input Session
    The first batch input method is to create a batch input session. It is the processing of this batch input session that updates the database, not the execution of the batch input program. i am giving you example for Change Vendor you practice for ur tcode
    For our example, we will use the “Change Vendor” transaction (“FK02”) to add a street address to an already existing vendor.
    Step #1
    Use “SystemStatus” menu path to determine online program name (SAPMF02K), screen number (0110)
    Step #2
    Use “F1” key and “Technical Info” pushbutton in each screen field to be filled to determine the field name.
    Step #3
    Determine how to proceed in the transaction
    (save the record by clicking on the ‘Save’ pushbutton or pressing the ‘F11’ key).
    The process flow of CALL TRANSACTION
    A program that uses CALL TRANSACTION USING to process legacy data should execute thefollowing steps:
    Prepare a BDCDATA structure for the transaction that you wish to run.
    Prepare a internal table to store error messages Tab_Mess like structure of BDCMSGCOLL.
    With a CALL TRANSACTION USING statement, call the transaction and prepare the BDCDATA structure. For example:
    CALL TRANSACTION ‘MM01' USING BDCDATA MODE 'A' UPDATE 'S'. MESSAGES INTO TAB_MESS.
    IF SY-SUBRC <> 0.
    <Error_handling>.
    ENDIF.
    Overview of Batch Input Session
    The first batch input method is to create a batch input session. It is the processing of this batch input session that updates the database, not the execution of the batch input program

  • Running Batch Input sessions in One program

    Hi Guys.
    I am sure this question might have come up before. Reall y  need quick help in this hence posted the same.
    I need to develop a program which creates several batch input sessions.
    At the end of the program all these sessions should ve triggerred in the background.
    Please let me know if this can be done and if yes can someone send me psuedocode for same.
    This is very urgent.
    thx

    Hi Vijay,
    Using the following function modules you can create a batch input session.
    BDC_OPEN_GROUP
    BDC_INSERT
    BDC_CLOSE_GROUP
    Example - http://www.sap-img.com/abap/auto-disallowed-back-posting-to-previous-period.htm
    You can use the program RSBDCSUB to schedule batch input sessions in background.
    http://www.sap-img.com/abap/learning-bdc-programming.htm - How to write BDC program
    Executing batch-input sessions in background jobs - Example for how to call the bdc session.
    Hope these are helpful.
    Thanks
    Vinod

  • Step by step batch input

    Hi friends,
    Please tell me about how to create a batch input from beginning to end.
    How can I achieve the entry of the data?
    sm35 or shdb is used to record the transaction steps?
    One says sm35, the other says shdb?
    Step by step?
    Thanks in advance.

    Hi,
    BDC option
    ABAP Runtime Environment (BC-ABA)
    Batch Data Communication option.
    BDC options define the processing mode for a batch input session.
    Examples of modes used for processing sessions are:
    •     Display all records.
    •     Display for error dialogs only.
    •     Process session in the background.
    •     Process session on the screen.
    Purpose
    During data transfer, data is transferred from an external system into the SAP R/3 System. You can use data transfer when you:
    •     Transfer data from an external system into an R/3 System as it is installed.
    •     Transfer data regularly from an external system into an R/3 System. Example: If data for some departments in your company is input using a system other than the R/3 System, you can still integrate this data in the R/3 System. To do this, you export the data from the external system and use a data transfer method to import it into the R/3 System.
    Implementation considerations
    Before creating your own data transfer program, you should use the Data Transfer Workbench to find the data transfer programs that are delivered by SAP.
    The Data Transfer Workbench 
    Purpose
    The Data Transfer Workbench supports the automatic transfer of data into the R/3 System.
    The Workbench is particularly useful for large amounts of data. It guarantees that data is transferred efficiently and ensures that data in the R/3 System is consistent.
    Features
    The Data Transfer Workbench provides the following functions:
    •     Integration of standard data transfer programs
    •     Registration and integration of your own data transfer programs
    •     Various techniques to load data into R/3.
    The data is read from a transfer file in SAP format and loaded into the R/3 System using one of the techniques below:
    •     Administration and organization of data transfer projects
    •     Tools for analyzing the required SAP structures
    •     BAPI interface
    •     Batch input
    •     Direct input
    Integration
    SAP applications support the data transfer of numerous SAP business objects. The data transfer program specifies the data format definition that is necessary to import the data into the R/3 System. Adapt your conversion program for exporting the data from the external system to this definition.
    Once the data has been exported, you can import it into your system using a generated data transfer program.
    Features
    •     Data transfer from other, external systems
    •     Generation of data transfer programs
    •     Generation of function modules that can be used as an interface to the R/3 System
    Initial Data Transfer 
    Prerequisites
    Before you start the initial data transfer, you should have answered the following questions:
    •     Which business objects are to be transferred?
    The objects to be transferred depend on the business applications you are using. If you are using sales and distribution processing, for example, you should transfer the material master records as well as the sales master records .
    •     How should the business objects be transferred?
    Various techniques are available to load the data into the R/3.
    Process Flow
    The process of transferring data can be divided into the steps:
    1.     Preparing the data transfer
    •     Analyzing and Cleaning Legacy Data
    •     Analyzing SAP Structures
    •     Developing Programs, Function Modules and BAPIs
    •     Creating a Program or FM for Data Extraction
    •     Creating a Mapping Program
    •     Registering Programs, Function Modules and BAPIs
    1.     Executing the data transfer
    •     Organizing the Transfer in Projects
    •     Executing Data Transfer Runs, monitoring (CCMS) and processing (log)
    •     Checking transferred objects in R/3 using a function module or report (task type AUD).
    The graphic below describes the steps involved in transferring the data:
    ThThe The Data Transfer Workbench is an integrated project management for all the required steps involved in transferring data to your R/3 System.
    You need to use programs or function modules for the various steps. SAP provides a range of BAPIs for loading data into R/3.
    You could also carry out all the steps, except for loading the data via BAPIs, without using the Data Transfer Workbench.
    In the first step you extract the existing data from a source system into a file and clean it there, if necessary.
    To load data into R/3 you need a transfer file in an appropriate SAP format.
    Using a mapping program you have to map the extracted data to the structures of the transfer file.
    To load the data into the R/3 System one of the Techniques is used depending on the type of business object . I f more than one of these techniques is provided for a particular object type, you should read the documentation to find out what the different uses are .
    Once you have created a project, you can start a run. The tasks of the run definition are processed in order.
    After the data has been successfully loaded into the R/3 System, it can be checked here.
    Result
    You have transferred the data into the relevant R/3 application and checked it here.
    Data Transfer 
    Purpose
    During data transfer, data is transferred from an external system into the SAP R/3 System. You can use data transfer when you:
    •     Transfer data from an external system into an R/3 System as it is installed.
    •     Transfer data regularly from an external system into an R/3 System. Example: If data for some departments in your company is input using a system other than the R/3 System, you can still integrate this data in the R/3 System. To do this, you export the data from the external system and use a data transfer method to import it into the R/3 System.
    Implementation considerations
    Before creating your own data transfer program, you should use the Data Transfer Workbench to find the data transfer programs that are delivered by SAP.
    Integration
    SAP applications support the data transfer of numerous SAP business objects. The data transfer program specifies the data format definition that is necessary to import the data into the R/3 System. Adapt your conversion program for exporting the data from the external system to this definition.
    Once the data has been exported, you can import it into your system using a generated data transfer program.
    Features
    •     Data transfer from other, external systems
    •     Generation of data transfer programs
    •     Generation of function modules that can be used as an interface to the R/3 System
    Data Transfer Methods 
    You can use the following methods to transfer data:
    •     Direct input: With direct input, the SAP function modules execute the consistency checks. However with batch input, these consistency checks are executed with the help of the screens. This means that direct input has considerable performance advantages.
    •     CALL TRANSACTION: Data consistency check with the help of screen logic.
    •     Batch input with batch input sessions : Data consistency check with the help of screen logic.
    Difference between Batch Input and CALL TRANSACTION
    If the direct input cannot be used for your task, this makes creating a data transfer program easier since the underlying transactions ensure that the data consistency checks are executed.
    In the case of an error during the data transfer (if data records are inconsistent, for example), you can restart the transfer at the point in the program where the error occurred.
    Batch input methods
    With the batch input method, an ABAP program reads the external data that is to be entered in the R/3 System and stores the data in a "batch input session". The session records the actions that are required to transfer data into the system using normal SAP transactions.
    When the program has generated the session, you can run the session to execute the SAP transactions in it. You can explicitly start and monitor a session with the batch input management function (by choosing System &#61614; Services &#61614; Batch input), or have the session run in the background processing system.
    CALL TRANSACTION methods
    In the second method, your program uses the ABAP statement CALL TRANSACTION USING to run an SAP transaction. External data does not have to be deposited in a session for later processing. Instead, the entire batch input process takes place inline in your program.
    The information in Choosing Data Transfer Methods will help you decide which is the best data transfer method.
    Data Transfer: Overview of Batch Input  
    Prerequisites
    Before beginning the initial data transfer, you should answer the following questions:
    •     Which business objects are to be transferred?
    The business objects to be transferred depend on the business applications that you will be using. If you are using sales and distribution processing, for example, you must transfer the material masters as well as the sales documents from your legacy system.
    •     How are the business objects to be transferred?
    The data can be transferred either manually or automatically, using an SAP data transfer program or using your own transfer program.
    Process flow
    During the initial data transfer, data from the external system is converted into a sequential data transfer file and then transferred into the R/3 System using an SAP data transfer program. The data transfer file is the prerequisite for successfully transferring data as it contains the data in a converted format that is suitable for the R/3 System.
    1.     Check to see if an SAP data transfer program (direct input, batch input or CALL TRANSACTION) exists for this data using the Data Transfer Workbench. Refer to the notes for this transfer program.
    If no SAP data transfer program exists, proceed as follows:
    2.     Determine the SAP transactions that a user would use to enter data records.
    3.     Record these transactions using the batch input recorder. Ensure that you have filled all of the relevant fields with data.
    4.     Use this data to generate a data transfer program.
    5.     Display the Data Transfer Workbench and create your own data transfer object.
    6.     Now follow the steps for transferring data using the Data Transfer Workbench.
    The Transaction Recorder 
    Use
    You can use the transaction recorder to record a series of transactions and their screens.
    Features
    You can use the recording to create
    •     Data transfer programs that use batch input or CALL TRANSACTION
    •     Batch input sessions
    •     Test data
    •     Function modules.
    The recording can be executed several times. The screens are run in exactly the same way as they were run during the recording.
    You can edit recordings that you have already made using an editor.
    Activities
    1.     To display the batch input initial screen, choose System &#61614; Services &#61614; Batch input&#61614; Edit.
    2.     Choose Recording. The system now displays the initial screen of the batch input recorder.
    3.     Make a recording of the relevant transactions.
    4.     Generate one or several of the objects named above.
    Special features
    •     F1 -, F4 - and self-programmed F1 - and F4 help ( PROCESS ON HELP-REQUEST , PROCESS ON VALUE-REQUEST ) are not recorded. The same applies to all commands in the System and Help menus.
    •     Error and warning dialogs are not recorded. This means that only the OK code field and the field contents that lead to successful further processing in the current screen.
    •     " COMMIT WORK " in a transaction flow indicates the successful end of the transaction as regards batch input. The recording also ends successfully.
    •     " LEAVE TO TRANSACTION " in the course of a transaction indicates that it is not suitable for batch input. The recording is terminated.
    •     In ScreenPainter screens, movements in the scrollbar are not recorded. Use the function keys F21-F24 for positioning.
      Recording Transactions 
    The recording forms the basis of generating data transfer programs, sessions, test data and function modules.
    Procedure
    1.     Display the initial screen of the batch input recorder.
    2.     Assign a name to your recording.
    3.     Choose Create.
    4.     On the subsequent dialog box, enter the transaction code that you want to record and choose Continue.
    The system displays this transaction.
    5.     Execute the transaction in the usual way.
    6.     When you have finished processing the transaction, the system displays an overview of the transaction and your input.
    Choose Get transaction if no errors occurred while the transaction was being recorded.
    If you do not want to keep the last recording that you made, go to the next step.
    7.     Choose Next transac. If you want to record an additional transaction. Then continue from point 4.
    8.     Save your recording when you have finished.
    Recording 
    Once you have recorded the transaction, you can process it again later.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and choose Execute.
    4.     Choose one of the following processing modes:
    A : Display all screens.
    E : Display errors only. In the case of an error, the system displays the screen on which the error occurred. Once this error has been corrected, the system continues to process the recording until the next error occurs.
    N : No display. The recording is not processed visibly.
    5.     Choose the update mode:
    A : Asynchronous update
    S : Synchronous update
    L : Local update
    6.     You begin to process the recording when you choose Enter to exit the dialog box. When the recording is complete, the system displays a log that lists the name of the transaction, the system field SY-SUBRC and the system messages that were output.
    Using the Recording Editor 
    The recording editor contains functions that you can use to edit your recordings.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and choose Change.
    4.     The following functions are available on the overview that the system displays:
    • Delete transaction from the recording: This deletes the selected transaction.
    • Add a new transaction to the recording: The transaction is added at the end of the recording.
    • Editing: You can edit the current recording.
    If you choose Editing, proceed as follows:
    5.     The system displays an editor where you can add and delete individual lines. You can also change the contents of these lines.
    6.     If these editor functions are insufficient for your requirements, you can choose Export to download the recording onto your presentation host and use a PC editor to edit it there.
    7.     Choose Import to import this file back into the R/3 System. Ensure that the file is still in the correct format.
    8.     Choose Check to ensure that the edited version of the recording is still syntactically correct.
    9.     Save your changes to the recording when you have finished editing it.
    Generating Batch Input Sessions From the Recording 
    The data from the recording is transferred into batch input sessions that you can process for test purposes using the usual mechanisms.
    Prerequisites
    Before you can generate a batch input session, you must record the transactions through which the data is to enter the R/3 System. You use the batch input recorder to do this.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and then choose Generate session.
    4.     Enter a session name, a user with whose authorizations the session is to be processed, the identification whether the session is to be deleted once it has been processed and the processing date.
    5.     Choose Continue to exit the dialog box.
    You have generated a batch input session that uses the same data for the input fields that you entered when you created the recording. You can now process this as usual.
    Generating Data Transfer Programs 
    Prerequisites
    Before you can generate a data transfer program, you must record the transactions using which the data is imported into the R/3 System. You use the batch input recorder to do this.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and choose Create program.
    4.     On the following screen, specify a program name.
    5.     You can also choose how the maintained field contents of the recorded screens are to be filled:
    • Transfer the values that were used during the recording. If you require a flexible data transfer, you must modify this program.
    • Set the parameters of the input values to be maintained and import these values from a data file. To set the parameters, the system creates a data structure and imports the data records from an external file into this data structure. The program assumes that the external file has been adapted to this data structure.
    6.     If you have decided to set parameters for the input values to be maintained, it is useful if you create a test file when you generate the program. To do this, flag the checkbox and enter a name for the test file. For more information, see creating a test file.
    7.     Choose Continue.
    8.     The system displays the attribute screen of the program editor. Choose the relevant attributes here and save the program.
    Result
    You have now generated a data transfer program that you can use to import data into the R/3 System. The program can execute the data transfer using batch input or CALL TRANSACTION .
    Generating Function Modules 
    Prerequisites
    Before you can generate a data transfer program, you must record the transactions using which the data is imported into the R/3 System. You use the batch input recorder to do this.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and choose Create function module.
    4.     On the subsequent dialog box, enter a function module name, a function group and a short text for the function module. Exit the dialog box by choosing Continue.
    The system automatically creates the function module.
    Result
    You have now generated a function module that you can use as an interface for your R/3 System. As well as information relevant for the data transfer, the function module's import interface has a parameter for each input field of the transaction recorded.
    Using Function Modules 
    Prerequisites
    The function module was generated from a recording made using the batch input recorder.
    Procedure
    1.     Cal the function module.
    2.     Supply the generic interface of the function module:
    CTU : Flag whether the data is to be transferred using batch input method CALL TRANSACTION USING . The system generates a batch input session if this flag is not set.
    MODE : Processing mode:
    A     Display all
    E     Display only errors
    N     No display
    UPDATE : Update mode:
    S     Synchronous
    A     Asynchronous
    L     Local update
    GROUP : (If CTU is already specified): Name of the batch input session to be generated
    USER : (If CTU is already specified): User with whose authorizations the session is to be processed
    KEEP : Specifies whether this session is to be deleted once it has been processed
    HOLDDATE : Specifies the earliest processing date for the error session
    NODATA : Defines the NODATA character
    3.     Supply the function module's special interface.
    For each input field that was filled when you recorded the transactions, the system creates an import parameter. The recorded value is used as the default value for this import parameter.
    Creating Test Files 
    To test the data transfer program that you have created, you can create a data record in a sequential file. This data record contains all the field contents from the recording that are relevant to the data transfer in the format required by the data transfer program. It is therefore useful if you align the format of your conversion program data file with the format of the test file.
    Prerequisites
    Before you can generate a data transfer program, you must record the transactions using which the data is imported into the R/3 System. You use the batch input recorder to do this.
    Procedure
    1.     Display the initial screen of the batch input recorder (Transaction SHDB).
    2.     Choose Overview.
    The system displays an overview of all recordings.
    3.     Position the cursor on the relevant recording and choose Create test data.
    4.     Enter a test file and exit the dialog box by choosing Continue.
    You have now created a test file.
    If the test file you have specified already exists, the system appends the new data record.
    If you do not specify the path, the system archives the test file in the working directory of the current application server.
    Executing the Data Transfer 
    Purpose
    You generally use the Data Transfer Workbench to execute the data transfer. The following section describes how you transfer data directly using the batch input method.
    Prerequisites
    You require a data transfer program. This may be an SAP data transfer program, or you can create your own program.
    Process flow
    1.     Provide the data to be imported in a data file. Ensure that the data is in the correct format.
    2.     If you are using a generated data transfer program, you can choose a data transfer method.
    If you are only dealing with one data record, you can import this directly using a generated function module.
    3.     Execute the data transfer program.
    4.     Analyze the program and correct any errors that occur.
    Writing Data Conversion Programs 
    The data conversion program is responsible for the following tasks:
    •     Converting the data that is to be transferred into the R/3 System as required by the SAP data structure or transactions that you are using.
    If you are using an SAP batch input standard program, you must generate the data structure from the SAP standard data structure (see generating an SAP data structure).
    If you develop your own batch input program, the data structure is determined by the R/3 System when the program is generated. Generate a test file from the recording and align the format of your conversion program with the format of the test file.
    A conversion may be necessary for data type and length data type and length. The data type required by all standard SAP batch input programs is C, character data. You can find the required field lengths either in your analysis of the data declaration structure of the generated batch input program or in the data structures that you generate.
    •     The data is exported in SAP format to a sequential file. The batch input program in the R/3 System reads the data in from this file.
    Process flow
    The tasks involved in writing a data transfer program are shown in the diagram and list below.
    Writing Data Conversion Programs 
    The data conversion program is responsible for the following tasks:
    •     Converting the data that is to be transferred into the R/3 System as required by the SAP data structure or transactions that you are using.
    If you are using an SAP batch input standard program, you must generate the data structure from the SAP standard data structure (see generating an SAP data structure).
    If you develop your own batch input program, the data structure is determined by the R/3 System when the program is generated. Generate a test file from the recording and align the format of your conversion program with the format of the test file.
    A conversion may be necessary for data type and length data type and length. The data type required by all standard SAP batch input programs is C, character data. You can find the required field lengths either in your analysis of the data declaration structure of the generated batch input program or in the data structures that you generate.
    •     The data is exported in SAP format to a sequential file. The batch input program in the R/3 System reads the data in from this file.
    Process flow
    The tasks involved in writing a data transfer program are shown in the diagram and list below.
    Selecting a Data Transfer Method  
    When you transfer data in ABAP, you have three options to submit the data for the data transfer. Only the first two methods can be recommended without reservation. The third method, by way of CALL DIALOG, is outmoded. CALL DIALOG is less comfortable than the other methods. You should use it only if you must.
    •     Use the CALL TRANSACTION USING statement
    Summary: With CALL TRANSACTION USING, the system processes the data more quickly than with batch input sessions. Unlike batch input sessions, CALL TRANSACTION USING does not automatically support interactive correction or logging functions.
    Your program prepares the data and then calls the corresponding transaction that is then processed immediately.
    The most important features of CALL TRANSACTION USING are:
    o     Synchronous processing
    o     Transfer of data from an individual transaction each time the statement CALL TRANSACTION USING is called
    o     You can update the database both synchronously and asynchronously
    The program specifies the update type
    o     Separate LUW (logical units of work) for the transaction
    The system executes a database commit immediately before and after the CALL TRANSACTION USING statement
    o     No batch input processing log
    •     Create a session on the batch input queue.
    Summary: Offers management of sessions, support for playing back and correcting sessions that contain errors, and detailed logging.
    Your program prepares the data and stores it in a batch input session. A session is a collection of transaction data for one or more transactions. Batch input sessions are maintained by the system in the batch input queue. You can process batch input sessions in the background processing system.
    Your program must open a session in the queue before transferring data to it, and must close it again afterwards. All of these operations are performed by making function module calls from the ABAP program.
    The most important aspects of the session interface are:
    o     Asynchronous processing
    o     Transfers data for multiple transactions
    o     Synchronous database update
    During processing, no transaction is started until the previous transaction has been written to the database.
    o     A batch input processing log is generated for each session
    o     Sessions cannot be generated in parallel
    The batch input program must not open a session until it has closed the preceding session.
    •     Use the CALL DIALOG statement
    Summary: Not recommended if you can enter data by way of sessions or CALL TRANSACTION USING.
    Your program prepares data for a sequence of dialog screens, and calls a dialog module for immediate processing.
    The most important aspects of the CALL DIALOG interface are:
    o     Synchronous processing
    o     Transfers data for a sequence of dialog screens
    o     No separate database update for the dialog
    A database update occurs only when the calling program executes a commit operation.
    o     Shares LUW with calling program
    o     No batch input processing log is generated
    Executing Data Transfer Programs 
    Procedure
    If you are using an SAP data transfer program, follow the procedure specified in the program documentation.
    If you are using a generated data transfer program, proceed as follows:
    1.     Start the data transfer program.
    2.     Decide which batch input method you want to use for the data transfer.
    a) CALL TRANSACTION USING:
    You must specify the:
    – Processing mode: You use this parameter to specify whether processing should take place in the background or in dialog mode.
    Possible values are:
    A     Display all
    E     Display only errors
    N     No display
    – Update mode: This parameter determines how the data is to be updated:
    Possible values are:
    S     Synchronous
    A     Asynchronous
    L     Local update
    – Error session: Here you have the option to specify a session name for a batch input session in which data is to be written in the case of an error. You can use this to identify incorrect data records after the batch input program has run and to import the records into the R/3 System once you have corrected them.
    If you are creating an error session, you must also specify:
    – User: Specify the user with whose authorizations the sessions are processed.
    – Keep session: This specifies whether or not the session should be deleted once it has been processed.
    – Lock date: Specify the processing date for the error session.
    b) Generate session:
    – Session name: Specify a name for the batch input session to be generated.
    – User: Specify the user with whose authorizations the sessions are processed.
    – Keep session: This specifies whether or not the session should be deleted once it has been processed.
    – Lock date: Specify the processing date for the error session.
    3.     Specify a character that is to be used as the NODATA character.
    4.     Specify the path of the data file from which the data is to be imported into the R/3 System.
    5.     Execute the program.
    6.     If you have generated a session, or if errors occurred in CALL sTRANSACTION USING mode, you must now edit the generated sessions. You can find information on this in BC - System services in batch input sessions.
    Batch Input Authorizations 
    You do not need special authorization - other than the ABAP run time authorization (authorization object S_PROGRAM - to run a program that creates batch input. Any user can create batch input sessions.
    Starting processing for a session once it is in the queue is another matter, however. You can find more information on this in batch input sessions.
    Creating a Session with BDC_OPEN_GROUP  
    Use the BDC_OPEN_GROUP function module to create a new session. Once you have created a session, then you can insert batch input data into it with BDC_INSERT.
    You cannot re-open a session that already exists and has been closed. If you call BDC_OPEN_GROUP with the name of an existing session, then an additional session with the same name is created.
    A batch input program may have only one session open at a time. Before opening a session, make sure that any sessions that the program closes any sessions that it previously had opened.
    BDC_OPEN_GROUP takes the following EXPORTING parameters:
    •     CLIENT
    Client in which the session is to be processed.
    Default: If you don't provide a value for this parameter, the default is the client under which the batch input program runs when the session is created.
    •     GROUP
    Name of the session that is to be created. May be up to 12 characters long.
    Default: None. You must specify a session name.
    •     HOLDDATE
    Lock date. The session is locked and may not be processed until after the date that you specify. Only a system administrator with the LOCK authorization for the authorization object Batch Input Authorizations can unlock and run a session before this date.
    Format: YYYYMMDD (8 digits).
    Default: No lock date, session can be processed immediately. A lock date is optional.
    •     KEEP
    Retain session after successful processing. Set this option to the value X to have a session kept after it has been successfully processed. A session that is kept remains in the input/output queue until an administrator deletes it.
    Sessions that contain errors in transactions are kept even if KEEP is not set.
    Default: If not set, then sessions that are successfully processed are deleted. Only the batch input log is kept.
    •     USER
    Authorizations user for background processing. This is the user name that is used for checking authorizations if a session is started in background processing. The user must be authorized for all of the transactions and functions that are to be executed in a session. Otherwise, transactions will be terminated with "no authorization" errors.
    The user can be of type dialog or background. Dialog users are normal interactive users in the R/3 System. Background users are user master records that are specially defined for providing authorizations for background processing jobs.
    Adding Data to a Session: BDC_INSERT  
    Use the BDC_INSERT function module to add a transaction to a batch input session. You specify the transaction that is to be started in the call to BDC_INSERT. You must provide a BDCDATA structure that contains all of the data required to process the transaction completely.
    BDC_INSERT takes the following parameters:
    •     TCODE
    The code of the transaction that is to be run.
    •     POST_LOCAL
    Parameter to update data locally. If POST_LOCAL = ‘X’, data will be updated locally.
    (refer to the keyword documentation of SET UPDATE TASK LOCAL for more information)
    •     DYNPROTAB
    The BDCDATA structure that contains the data that is to be processed by the transaction.
    DYNPROTAB is a table parameter in the function module.
    Closing a Session: BDC_CLOSE_GROUP  
    Use the BDC_CLOSE_GROUP function module to close a session after you have inserted all of your batch input data into it. Once a session is closed, it can be processed.
    Function Module BDC_CLOSE_GROUP
    Exception parameters
    Parameter     Function
    NOT_OPEN     Client
    QUEUE_ERROR     Internal use
    BDC_CLOSE_GROUP needs no parameters. It automatically closes the session that is currently open in your program.
    You must close a session before you can open another session from the same program.
    You cannot re-open a session once it has been closed. A new call to BDC_OPEN_GROUP with the same session name creates a new session with the same name.
    Processing Batch Input Sessions 
    When you create a batch input session, it remains in the batch input queue until it is explicitly started. Session processing can be started in two ways:
    •     An on-line user can start the session using the batch input menu options. (To access the batch input options, choose System &#61614; Services &#61614; Batch Input.)
    •     You can submit the background job RSBDCSUB to start a session in background processing. If several sessions have the same name, RSBDCSUB starts them all.
    It’s possible to coordinate the generation and execution of a session in the background processing system.
    You can, for example, schedule both the batch input program and RSBDCSUB in the background. If you designate the batch input job as the predecessor for RSBDCSUB, then RSBDCSUB will be started automatically when the batch input job successfully completes.
    Alternatively, you can schedule both the batch input program and RSBDCSUB as job steps in a single background job. In this case, however, RSBDCSUB is started even if the batch input program should terminate abnormally.
    For detailed information about processing batch input sessions, see Managing Batch Input Sessions in the System Services guide.
    Frequent Data Transfer Errors 
    The most frequent errors include:
    •     The BDCDATA structure contains screens in incorrect sequence.
    •     The BDCDATA structure assigns a value to a field that does not exist on the current screen.
    •     The BDCDATA structure contains a field that exceeds the specified length.
    General guidelines
    You should be aware of the following guidelines when you create sessions and call transactions or dialogs:
    •     You must provide data for all required fields on a screen.
    •     You can only specify the initial data for a screen. The system does not accept input as a response to a warning or an error message.
    •     If there is more than one possible screen sequence for a transaction or dialog, your program specifies the screen sequence for the transaction. You must transfer all screens that the dialog user sees to the selected screen sequence. This applies even if the screen itself is not used to input data.
    Direct Input  
    To enhance the batch input procedure, the system offers the direct input technique, especially for transferring large amounts of data. In contrast to batch input, this technique does not create sessions, but stores the data directly. It does not process screens. To enter the data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary checks. In case of errors, the direct input technique provides a restart mechanism. However, to be able to activate the restart mechanism, direct input programs must be executed in the background only. To maintain and start these programs, use program RBMVSHOW or Transaction BMV0.
    Examples for direct input programs are:
    Program     Application
    RFBIBL00     FI
    RMDATIND     MM
    RVAFSS00     SD
    RAALTD11     AM
    RKEVEXT0     CO-PA
    Pls reward points.
    Regards,
    Ameet

  • Calling oracle procedure from ABAP program

    There is a requirement to call the oracle stored procedure with some input parameter from ABAP program.
    Suppose we have order number which is entered by the user in ABAP program.
    This order number needs to be passed to oracle stored procedure as an input parameter in the same ABAP program.
    We can call the oracle stored procedure without parameter using the following syntax
    exec sql
    execute procedure <procedure name>
    end exec.
    But do not know how to execute the oracle stored procedure with some input parameter?

    Apologies , following is the correct code.
    This will definetly solve your problem.
    DATA scarr_carrid TYPE scarr-carrid.
    SELECT-OPTIONS s_carrid FOR scarr_carrid NO INTERVALS.
    DATA s_carrid_wa LIKE LINE OF s_carrid.
    DATA name TYPE c LENGTH 20.
    TRY.
        EXEC SQL.
          CREATE FUNCTION selfunc( input CHAR(3) )
            RETURNING char(20);
            DEFINE output char(20);
            SELECT carrname
                   INTO output
                   FROM scarr
                   WHERE mandt  = '000' AND
                         carrid = input;
            RETURN output;
            END FUNCTION;
        ENDEXEC.
        LOOP AT s_carrid INTO s_carrid_wa
                         WHERE sign = 'I' AND option = 'EQ'.
          TRY.
             EXEC SQL.
                EXECUTE PROCEDURE selfunc( IN  :s_carrid_wa-low,
                                           OUT :name )
              ENDEXEC.
              WRITE: / s_carrid_wa-low, name.
            CATCH cx_sy_native_sql_error.
              MESSAGE `Error in procedure execution` TYPE 'I'.
          ENDTRY.
        ENDLOOP.
        EXEC SQL.
          DROP FUNCTION selfunc;
        ENDEXEC.
      CATCH cx_sy_native_sql_error.
        MESSAGE `Error in procedure handling` TYPE 'I'.
    ENDTRY.
    Reward points if usefull.
    Thanks and regards,
    Veerendranath.

  • How to check whether a batch input session is completed in ABAP program

    I have created a ABAP program to create a batch input session (reference to RSBDCSUB). After the creation of the batch input session, I kick it to start and read the execution log. However, sometimes I cannot read anything from the execution log as the execution of the batch input is a synchronized process to the execution of my program, i.e. at the time being that I try to read the log of a particular transaction, that transaction is being processing / haven't start processing.
    How can I check whether a batch input session is completed in the program?
    The code that corresponding to the triggering of batch input session:
    SUBMIT (SUBREPORT)
       USER MTAB-USERID
       VIA JOB MTAB-GROUPID
       NUMBER JNUMB
       WITH QUEUE_ID  EQ MTAB-QID
       WITH MAPPE     EQ MTAB-GROUPID
       WITH MODUS     EQ 'N'
       WITH LOGALL    EQ LMODUS
    Or is there any method to wait here until the process is completed before further processing?

    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.

  • 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.

  • How to set a  Executable ABAP  Program to run as a Background Batch Job

    Hi
    Currently  I had a Executable ABAP  Program which when executed prompts for user to enter selection once entered and executed it will delete user entered selections from a Table.
    Now my requirment is to enhance that program to run it as a BACKGROUND BATCH JOB so that there will be an entry in SM37 when the program is executed
    How can i achieve this

    Hi,
    Please refer this link .
    It has the steps.
    http://sapient.wordpress.com/2007/06/19/how-do-you-set-up-background-jobs-in-sap/
    Regards,
    SuryaD.

  • How to run a ABAP Program in Batch JOB

    How to run a ABAP Program in Batch JOB ?

    Hello Manish,
    Using transaction SM36 you can define the batch job along with the start conditions for that job.
    1. Transaction SM36.
    2. Give the Z name of the job in the 'Job Name' input field.
    3. Click on 'Steps' button from the application toolbar.
    4. On the 'Create Step 1' dialog box, give the name of the ABAP program in the 'ABAP Program' section' along with the variant.
    5. Click on 'Check Input' button from the dialog box.
    6. Click on 'Save' button from the dialog box once the check is successful.
    7. One list will be shown. Click on Back button from the standard toolbar.
    8. Click on 'Start Conditions' button from the application toolbar. Specify the start condition e.g. immediate. Click on save.
    9. The job staus is now scheduled.
    10.Click on Save button from the standard toolbar of SM36. The job status will be released.
    Using SM37 you can monitor the status of the job.
    This will sort out your problem.
    PS If the answer solves your query, plz reward points.
    Regards

  • LSMW or ABAP Program:- I need BAPI function module or Direct input program

    hi experts,
    I have to develop the program which uploads the transportation pricing data for freight cost management.
    the transcation code is XK15 for the application A.
    There is a program called RV14BTCI which will uploads for the application V or M not for A.
    So i can use lsmw or direct input program in both lsmw and abap program so plz help me if there is any BAPI function module or Direct input program for Application A.
    thank you,
    waiting for u r reply.
    Edited by: SANTOSH MARUPALLY on Jan 22, 2008 6:27 AM

    Hi Santosh
    Am not really sure if RV14BTCI can not be used for other applications apart from V and M.
    You can try using BAPI: BAPI_PRICES_CONDITIONS. Over the forum you can find few example coding.
    Regards
    Eswar

  • ABAP program to take input parameter from variant, execute KSB1 and export

    Hi Friends,
    My client asking  change request in CO
    The Change request is "ABAP program to take input parameter from variant, execute KSB1 and export the output into an excel sheet and park the document in a designated location"
    Pls let me know  actually i am a FICO consultant what i can do in this change request
    Thanks,
    Santi

    Hi
    First I dont you would need to create a ABAP to generate the report in Excel.
    You can look at this option. Execute the report Go to->Change Layout, Click on the view option, On the Preferred View Select Microsoft Excel, Save the layout, provide a layout name with /XYZ.
    Now when you want to execute KSB1 with excel, just execute KSB1 with /XYZ layout, it would open in Excel, export to which ever location you want.
    Or just simply save the report as Excel using the Excel button on the tool bar.
    Regards,
    Suraj

  • How to process a batch input session directly from the program

    Hi,
    I have developed a program which will create a batch input session.
    When the program is executed, the session should get processed . ie. the user need not have to go to sm35 to process the session. I am facing some problem in this.
    I am using BDC_INSERT by passing the tcode . The session is getting processed, but when i go to sm35, i noticed that the session is still listed under the "New" tab instead of the "Processed" tab.
    Also I am not getting the final window with the buttons " Session overview" and "Exit Batch Input".
    Please help me out in this.

    Hi
    U have to submit the program RSBDCSUB:
    SUBMIT RSBDCSUB WITH MAPPE = <session>
                    WITH VON   = SY-DATUM
                    WITH BIS   = SY-DATUM
                    WITH FEHLER = ' '
                        EXPORTING LIST TO MEMORY
                                        AND RETURN.
    Max

  • Batch Input in RF programming

    Hi,
    I have a couple of questions on RF programming....
    1. Batch Input
    I was always under the impression that we should NOT use BDC in RF screens but, while searching SDN, I saw Rich Heilmann mention that he does it ([SDN Thread|Re: Radio Frequency - Error handling]). Most regular SDN people will know that Rich knows a thing or two about RF so could anyone confirm if it is OK or not to use BDC in RF?
    2. Is it okay to use 'Call Function .... in Update Task' in RF?
    Thanks.

    Just a quick answer - I don't know if it will help.
    We've used a combination of BDCs and call functions.  We have not used in update task.   We would like to get real time data quickly.  I can't see any reason why it would be a problem.  Unless you have transactions that depend on that data and it hasn't been updated.

  • Standard Batch Input Programs for Profit Center Creation

    Dear all;
    I am in 4.0B version that doesnt have BAPI_PROFITCENTER_CREATE. Writing a BDC for this would be complicated as my data is compiled in a different way.
    Are there any Standard Batch Input Programs for Profit Center Creation ?

    Hi Srivathsan,
    You can make use of  Standard BAPI by LSMW.
    Business Object   BUS1116      Profit Center Group
    Method                CREATE                      Create
    Message Type      PROFITCENTERGROUP_CREATE   
    Basic Type           PROFITCENTERGROUP_CREATE
    Regards,
    Sivaram.

  • How to process batch input session through program

    Hi Friends,
    I am getting 5 batch input sessions in SM35,but  I want to process these all sessions through program without going to SM35.
    How it is possible through Program?
    Please Guide me!
    Thanks,
    Yogesh

    Hi,
    It's the report to run the batchinput sessions.
    When you create to B.I. session, you can execute it by transaction SM35 (but it uses rsbdcsub) or rsbdcsub.
    For example you can use it in the same program where you create B.I.:
    Here the code to fill the structures of FI batch input
    standard....
    ...here it creates session...
    SUBMIT RFBIBL00 WITH DS_NAME = VA_FILE
    WITH CALLMODE = CALLMODE AND RETURN.
    ....here it runs session....
    SUBMIT RSBDCSUB WITH MAPPE = P_NAME
    WITH VON = SY-DATUM
    WITH BIS = SY-DATUM
    WITH FEHLER = ' '
    TO SAP-SPOOL
    LIST NAME P_NAME
    LIST DATASET P_NAME
    COVER TEXT P_NAME
    NEW LIST IDENTIFICATION ' '
    EXPORTING LIST TO MEMORY
    AND RETURN.
    regards,
    Shiva.

Maybe you are looking for

  • ITunes library is damaged, all playlists lost.  how to restore?

    yesterday my  iTunes froze and it or something caused the computer to go very slow.  i had to force quit all open applications and restart.  iTunes then started importing music from Cloud and eventually I had a message to say the library was damaged.

  • How to get info from a .class file at run time? thanks for help

    I need to get methods and properties (variables) from a .class file at run time. as u know, javap.exe can do that in an independent way. but i need to get info at run time once the .class or packeges have been changed, javap is not suitable in the ca

  • New computer set up for performance

    i would like to have a bit of help making sure i have configured Pr Ae and Sg to match the peformance my computer can afford. namely i am not sure how to configure scratch disks render drives and export drives. also id like to make sure that my Quadr

  • Multi Purchasing Group Selection

    Hi, Please assist with the Purchasing Group select. We are in SRM 5.0 , classic scenario. I managed to get the Requestor/Purchaser to have all purchasing group on Extended Details tab. Once the PurchGrp is selected, and shopping cart created, the Pur

  • Encore Crashes at verificatiojn of media update,still there

    I have 12gigs of ram, alldrives in raid 5, alldrives 7200 rpm. (4 raid 1 c:)Asus 58d motherboard, NVIDIA 5000. Win 7 -I7 processor. Software: CS% Master suite, Creative sound blaster, iolo tech searc/recover, Lightscribe dvd, Memo and Seagate DashBoa