Help Center>Step-by-Step Guides Help

FB50 step by step: Posting Journal vouchers

This document describes how you can use Winshuttle Transaction to post Journal Vouchers in the SAP Business Suite from data in Microsoft Excel using the SAP transaction FB50 (Enter G/L Account Document).

The example here will show how to use the Transaction loop feature to upload multiple-line GL entries from an Excel file into SAP.


The FB50 transaction is very similar to the FV50 (Park G/L Document), FB60 (Enter Invoice), and FV60 (Park Invoice) transaction, and the steps shown here can also be used for those transactions.


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

    file new

  3. Click Transaction, and then click Create from Recording.

    click transaction create from recording

  4. Choose the SAP system that you want to use, enter the appropriate user data, and then click Log On to SAP.

    choose system and log on to sap

    If you do not see the SAP system that you want, click Advanced SAP Logon, click Add System, provide the system information, and click OK.

  5. In the Transaction code box, type FB50.

    type fb50 in transaction code box

  6. Leave the recording mode as Standard. If you do not see Standard, click Change, click Non-Batch Input Mode Without SAP Controls, and then click OK.

    Note: For most transactions, the default mode is Standard, and the Winshuttle Function Module (WFM) selects the optimum mode for the t-code that is being recorded.  If the WFM is not installed, Non-Batch Input Mode Without Controls will work for most transactions. Non-Batch modes are necessary for downloading information from SAP transactions, or for Finance or HR transactions in which there are Dynamic Actions executing or user parameter values being used; otherwise, if you do not have access to Non-Batch modes, you can try recording in Batch Mode. The difference between Without SAP Controls and With SAP Controls is just a matter of what tools are on the transaction screens. For more information, see the Recording modes topic (Connect mode or Foundation mode).

  7. Click Start Recording.

    start recording button

    The FB50 transaction starts.

    Note: The following screens may vary according to the way your SAP system has been configured.
    These differences will be identified throughout the rest of this document.

  8. To make this process repeatable by Transaction, there will be a few changes to the process compared with how you would manually create a material. These differences will be identified throughout the rest of this document.

  9. Enter the company code and click the green checkmark button.
  10. Enter data into the header section of the screen. In this example:
    • Document Date
    • Posting Date
    • Currency
    • Reference
    • Doc. Header Text
    • Document Type

    enter gl account document screen

  11. Press the Enter key.
  12. In the item section, enter data for the first line item:
    • G/L Account number
    • Debit/Credit Indicator
    • Amount
    • Cost Center/Profit Center

    Important: These steps will most likely be different from manual entry.

  13. After you enter all of the data for the line, select and highlight the row.
  14. Click the Insert Row button to insert an empty row above the current row.

    row highlighted

  15. Now fill in the newly inserted line on top with the data for the next item, and then press the Enter key.

    new row entered

    Important: While recording this transaction, pay close attention to the running balances of the debit and credit entries. The transaction balance indicator must be green at the end of the recording.

  16. Click Save to save and exit out of the transaction.

    s a p save button

  17. When SAP notifies you that the document was posted, click the green checkmark button. This ends the recording.

After Studio finishes compiling the script, it will take you to the Map tab.


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 in the order that they appear in the Mapper. Because of the complexity of this transaction, we will map the fields manually instead.

The screenshot below shows the Basic View tab of the Mapper.

In each of the rows of the Mapper, you will see:

  • Mapper row number: This is just a reference number.
  • Enable flag: only enabled Mapper rows will be executed by Transaction.
  • Field Description: The label associated with the SAP technical field name.
  • Field Name: The SAP technical field name.
  • Field Type & Length: For example, String or Decimal, and the padding options.
  • Mapping direction: 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 mapped locations in the associated data source.

Note: The Properties pane is also displayed, but it is not shown below.

basic view of mapper

In the Data Set panel, you will see a preview screen of the selected data source type.

To change the data source type, click the drop-down menu under the Data Set tab and choose the data source type that you want.

change data source type drop down menu

The preview will change to reflect the choice. In this case, we will use Excel.

Disable duplicate fields

As you can see, the line item data for G/L Account number, Debit/Credit, Amount, and Tax Code repeat again on the next screen because in our recording we entered two line items.

We do not need these fields to be enabled, because in the next step we will insert a loop to allow uploading multiple line items.

To disable the duplicate fields:

  1. Click the Expert View tab.
  2. Select the rows by clicking the first row in the selection and pressing Shift while you click the last row in the selection.

    rows selected in mapper

  3. Right-click and select Disable from the menu.

The rows disappear from the Mapper.

Add the loop

To allow the Excel spreadsheet to contain data for multiple line items, we will insert a Loop around Mapper rows containing the Item data for G/L Account number, Debit/Credit, Amount, and Tax Code.

  1. Select the rows for the entire line item, in this case rows 13 through 20.

    rows selected in mapper

  2. Click the Create Loop button.

    create loop button

    The Loop box opens with default values, which you can change.

    • The boxes at the top show the start and end rows of the loop in the Mapper (the highlighted rows).
    • The Loop identifier column box displays the column in the spreadsheet that will contain the Header and Detail (line item data) identifiers.
    • The Text to identify Transaction Header and Text to identify repeating Line Items boxes display the values that will identify the Header (H) and Line Item (D) rows.

    loop box

  3. Click OK 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 Loop ID Column has been identified in the Preview panel.
    • Row 2 contains the first Header ID value and Row 3 contains the Line Item ID value.

    loop in mapper

Map and save the script

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 the Mapper.

  1. Drag column B up and drop it onto row 6.
  2. Continue across the Excel preview by dragging column C up and dropping it onto row 10, column D up to row 10, and columns E and F up to row 11 and 12, respectively. Continue for all the header and line item fields.

    fields mapped to excel preview

Add data and run the script

  1. Click the Run tab.

    run tab

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

  2. Type the data in the columns.

    data typed with header and line item identifiers

    You can specify a start and end row, specify the Excel sheet that contains the data, and change the Log column.

  3. To execute the upload, click the Test button, if you are a Foundation user, or click the Run button if you are not a Foundation user.

    Studio prompts you to save the script and data files.

    save box

    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.

    After you save the script and data files, the script runs.

    The yellow message bar displays a message when the run has finished.

    success message in message bar

  4. Check the log column. The run was successful and the messages returned from SAP were entered into the log column.

    log messages