Help Center>Step-by-Step Guides Help

VA01 step by step: Creating a sales order with Winshuttle Transaction

This document describes how you can use Winshuttle Transaction to create a sales order in the SAP Business Suite from data in Microsoft Excel using the SAP transaction VA01.



  1. Start Winshuttle Transaction from the desktop shortcut or from the Windows Start menu.
  2. Click New.

    file tab new button

  3. Enter transaction code VA01 in the Transaction Code box, and then click Go.

    type va01 and click Go

    An SAP Log On screen appears.

  4. Click the SAP system that you want to use, and then click OK.
  5. Enter the appropriate User Data in the SAP Logon window, and then click the OK button.

    sap logon box

    If you do not see the SAP system that you want, click the System button and choose a different system.

  6. Choose the recording mode:
    • To suppress the ATP Check, click Batch Input Mode. Batch Input mode will suppress dynamic actions executed by SAP (i.e., ATP). This usually allows all sales order to be repeatable without having ATP checked with in the system.
    • To read or download information from SAP, click Non-­Batch Input Mode and click Without SAP Controls.
    • To add long text (wrapped text) to header text or line item text, click Non-­Batch Input Mode and click With SAP Controls.

    recording properties box

    For more information, see the Recording modes topic (Connect mode or Central mode).

  7. Enter any additional properties in the appropriate fields.
  8. To prevent people from editing the script, check the Lock TRANSACTION script box. This will password-­protect the script, preventing anyone from changing it.
  9. Click Next.

    You will now be launched into the VA01 transaction.

    Note: The screens might appear slightly different in the recording mode because we are using a background mode.

  10. Enter the Order Type (OR), the Sales Organization, the Distribution Channel, and the Division.

    create sales order initial screen

  11. Enter the Header data, and then press Enter.

    header data

  12. In the line item grid, click in the second line and enter the data for that line item. Do not press Enter.

    enter data on second line of grid

  13. Click the Create item button.

    create rows button

    The line item moves up to the first row.

  14. Click in the second row again, enter the second line item, and then click the Create item button.

    add next line item in second row

  15. Click Save. This will end the recording and take you back to Transaction.

    save button


It is now time to create the mapping for this transaction. Mapping a script is just a matter of connecting SAP fields to fields in your data file. Transaction provides a Mapper to facilitate this process.

Auto Mapping will map the entire script to an Excel spreadsheet and in order. Because of the complexity of this transaction, we will choose the Create Mapping option instead.

  1. Click the Create Mapping link in the middle pane.

    link to open mapper

    The Mapper opens and displays the Expert tab.

    expert tab in mapper

    • Mapper Row number: This is just a reference number.
    • Enable flag: only enabled Mapper rows will be executed by Transaction.
    • Screen / Screen Number: Technical screen information from the recorded transaction.
    • Field Description: The label associated with the SAP technical field name.
    • Field Name: The SAP technical field name.
    • Mapping Type: Fixed Value, Excel to SAP, SAP to Excel (or, if mapping to Access: Access to SAP, SAP to Access).
    • Value: Values assigned to the SAP field; either fixed values or values to or from the assigned data source.
    • Notes: Free­format notes to provide useful information to runners of the Transaction script.
  2. In the Data Source Preview section, you will see a preview screen of the selected data source.

    To change the Data Source, click the Change Source Type link at the top. This displays a drop­down box to switch to Microsoft Access.

    change source type link

    The Preview section will change to reflect the choice.

    In this case, we will use Excel.

  3. To add a loop to the script that will add multiple line items to a sales order, select the lines that contain the line item data, including the screen name and the OK code for the screen. For this example, select rows 15 through 20 in the Mapper.

    selected rows in mapper

  4. Click the Loop button at the top left of the screen.
  5. The Do While Properties box opens with default values, which can be overridden:
    • The start and end row refer to the rows in the Mapper that contain the loop (the highlighted rows—in this case, 15 through 20).
    • The MS Excel ID Column box displays the column in the spreadsheet that will contain the Header and Detail (line item data) identifiers.
    • The Header ID and Line Item ID displays the values that will identify the Header (H) and Line Item (D) rows.

    do while loop properties box

  6. Click the OK button to insert the loop around the selected Mapper rows.

    The Mapper reflects the following changes as a result of inserting the loop:

    • The graphical depiction of the Loop around the selected lines indicates which Mapper rows will be contained within the loop.
    • The ID Column has been identified in the Preview screen and row 2 contains the first Header ID value.

      Note: This will appear in the preview file only if you are mapping to a blank file.

    loop indicator

  7. It is easiest to map from the Basic tab (as shown below). Click the Basic tab.
  8. To map the script to the data source, you will drag in the direction that the data will move. For this script, you are uploading data from Excel to SAP, so you will drag from Excel to SAP.

    Map the Header data first. In this example:

    • Drag column B up and drop it onto row 6.
    • Drag column C up to row 7.
    • Drag column D up to row 8.

    Then map the Line Item data. In this example:

    • Drag column E up to row 9.
    • Drag column F up to row 10.
    • Drag column G up to row 11.

    fields mapped to excel rows

  9. The next step is to save the script file (.TxR) and the Excel preview file (.xlsx). Click the Back arrow button at the top on the File menu.

    file tab back button

    The best practice is to name the Excel spreadsheet the same name as the script unless an Excel spreadsheet will be used for multiple scripts.

    Note: If you want to use an existing Excel file that already has the data set up, you can skip saving the preview file and save the script file by clicking the Save button on the File menu.

  10. Transaction prompts you to save the Excel preview file.

    prompt to save preview file

  11. Click Yes, and then enter the Excel file name.
  12. Transaction prompts you to save the script.

    prompt to save script file

  13. Click Yes, and then enter the script’s name.

Add the data

Transaction loads the Run pane.

If necessary, you can navigate back to the Mapper by clicking the Update Mapping link on the Map pane.

link to open mapper and update mapping

  1. Click the Excel icon to the right of the Select Data File box. This will open the mapped Excel file that is listed in the Selected Data File box.

    run pane

    Note: Transaction will automatically assign the Log column to the next available column after the last mapped column (in this example, column H).

  2. Type the data in the columns (i.e., data for creating new sales orders), and then save the Excel file.

    data in excel spreadsheet

    After you enter the data into the Excel spreadsheet, you can run the script.


Back at the Transaction Run pane, you can specify a start and end row, specify the Excel sheet that contains the data, and change the Log column

  1. To execute the upload, click the Test button, if you are a Central user, or click the Run button if you are not a Central user.
  2. In the SAP Logon window, if necessary, click the System button to select the appropriate SAP system.
  3. Enter the appropriate user data, and then click OK.

The Sales Orders are now created based on the data in the spreadsheet, and the sales order numbers are returned in the Log column, H.

log column after run