SAP PTRA_WEB_EXPENSE_REPORT_SAVE_2 Function Module for
PTRA_WEB_EXPENSE_REPORT_SAVE_2 is a standard ptra web expense report save 2 SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for ptra web expense report save 2 FM, simply by entering the name PTRA_WEB_EXPENSE_REPORT_SAVE_2 into the relevant SAP transaction such as SE37 or SE38.
Function Group: PTRA_WEB_MAIN
Program Name: SAPLPTRA_WEB_MAIN
Main Program: SAPLPTRA_WEB_MAIN
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function PTRA_WEB_EXPENSE_REPORT_SAVE_2 pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'PTRA_WEB_EXPENSE_REPORT_SAVE_2'".
EXPORTING
I_EMPLOYEENUMBER = "Personnel Number
* IT_RECEIPTS = "Trip Receipts
* IT_ADVANCES = "Advances for the Trip
* IT_MILEAGE = "Legs of Trip
* IT_ITINERARY = "Destinations of Trip
* IT_DEDUCTIONS = "Deductions for Gratuitous Service During Trip
* IT_TRANSPORT = "
* IT_COSTDIST_TRIP = "Cost Distribution of Trip
* IT_COSTDIST_ITIN = "Cost Assignment of a Trip Destination
* IT_COSTDIST_RECE = "Cost Assignment of a Trip Receipt
* IT_COSTDIST_MILE = "Cost Assignment of a Leg of Trip
* I_TRIPNUMBER = "Trip Number
* IT_HISTORY = "History of Database Updates of Trip
* I_EDITOR = "General Texts of Trip
* I_REQ_DOCUMENT = "Delivery of Requested Travel Service Documents -> Web UI
* IT_REQ_SERVICE = "Table Type for Travel Service Requests - Web UI
* IT_REQ_TAC = "Table Type: Types of Transport/Accommodations in Request
* IT_REQ_ESTC = "Estimated Costs in Travel Request
* IV_SAVE_WITHOUT_CHECK = "
* I_FM_POSTING_DATE = "
* I_PERIODNUMBER = "Number of Trip Period
* I_PERIODVERSION = "Sequential Number of Period
* I_TRIP_ACTION = 'MOD' "Function Code for Function Module HRTRV_IF_MODIFY_TRIP
* I_TRIP_COMPONENT = ' ' "Plan Request Indicator
* I_TRIP_APPLICATION = "
* I_LANGUAGE = SY-LANGU "Language Key
* I_GENERAL_DATA = "General Trip Data
IMPORTING
E_TRIPNUMBER = "Trip Number
ET_DEDUCTIONS = "Deductions for Gratuitous Service During Trip
ET_TRANSPORT = "
ET_COSTDIST_TRIP = "Cost Distribution of Trip
ET_COSTDIST_ITIN = "Cost Assignment of a Trip Destination
ET_COSTDIST_RECE = "Cost Assignment of a Trip Receipt
ET_COSTDIST_MILE = "Cost Assignment of a Leg of Trip
ET_HISTORY = "History of Database Updates of Trip
E_REQ_DOCUMENT = "Delivery of Requested Travel Service Documents -> Web UI
ET_REQ_SERVICE = "Table Type for Travel Service Requests - Web UI
ET_REQ_TAC = "Table Type: Types of Transport/Accommodations in Request
E_PERIODNUMBER = "Number of Trip Period
ET_REQ_ESTC = "Estimated Costs in Travel Request
EV_SAVED_SUCCESSFUL = "Checkbox
E_FM_POSTING_DATE = "
E_PERIODVERSION = "Sequential Number of Period
E_GENERAL_DATA = "General Trip Data for External Display
E_EDITOR = "
ET_RECEIPTS = "Trip Receipts
ET_ADVANCES = "Advances for the Trip
ET_MILEAGE = "Legs of Trip
ET_ITINERARY = "Destinations of Trip
TABLES
ET_RETURN = "Return Parameter(s)
IMPORTING Parameters details for PTRA_WEB_EXPENSE_REPORT_SAVE_2
I_EMPLOYEENUMBER - Personnel Number
Data type: BAPIEMPL-PERNROptional: No
Call by Reference: No ( called with pass by value option)
IT_RECEIPTS - Trip Receipts
Data type: PTRV_WEB_RECEIPTS_INT_T_2Optional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADVANCES - Advances for the Trip
Data type: PTRV_WEB_ADVANCES_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_MILEAGE - Legs of Trip
Data type: PTRV_WEB_MILEAGE_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ITINERARY - Destinations of Trip
Data type: PTRV_WEB_ITINERARY_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_DEDUCTIONS - Deductions for Gratuitous Service During Trip
Data type: PTRV_WEB_DEDUCTIONS_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_TRANSPORT -
Data type: GLO_PTRV_WEB_TRANSPORT_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COSTDIST_TRIP - Cost Distribution of Trip
Data type: PTRV_WEB_COSTDIST_TRIP_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COSTDIST_ITIN - Cost Assignment of a Trip Destination
Data type: PTRV_WEB_COSTDIST_ITIN_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COSTDIST_RECE - Cost Assignment of a Trip Receipt
Data type: PTRV_WEB_COSTDIST_RECE_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COSTDIST_MILE - Cost Assignment of a Leg of Trip
Data type: PTRV_WEB_COSTDIST_MILE_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TRIPNUMBER - Trip Number
Data type: BAPITRIP-TRIPNOOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_HISTORY - History of Database Updates of Trip
Data type: PTRV_WEB_HISTORY_TOptional: Yes
Call by Reference: No ( called with pass by value option)
I_EDITOR - General Texts of Trip
Data type: STRINGOptional: Yes
Call by Reference: No ( called with pass by value option)
I_REQ_DOCUMENT - Delivery of Requested Travel Service Documents -> Web UI
Data type: FTPS_WEB_REQ_DOC_DELIVERY_OUTOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_REQ_SERVICE - Table Type for Travel Service Requests - Web UI
Data type: FTPS_WEB_REQUEST_SERVICE_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_REQ_TAC - Table Type: Types of Transport/Accommodations in Request
Data type: PTRV_WEB_REQUEST_TAC_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_REQ_ESTC - Estimated Costs in Travel Request
Data type: PTRV_WEB_REQUEST_ESTC_INT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_SAVE_WITHOUT_CHECK -
Data type: WDY_BOOLEANOptional: Yes
Call by Reference: No ( called with pass by value option)
I_FM_POSTING_DATE -
Data type: FM_POSTING_DATEOptional: Yes
Call by Reference: No ( called with pass by value option)
I_PERIODNUMBER - Number of Trip Period
Data type: BAPITRVXXX-PERIODOptional: Yes
Call by Reference: No ( called with pass by value option)
I_PERIODVERSION - Sequential Number of Period
Data type: PTRV_PERIO-PDVRSOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TRIP_ACTION - Function Code for Function Module HRTRV_IF_MODIFY_TRIP
Data type: PTRV_TRIP_ACTIONDefault: 'MOD'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_TRIP_COMPONENT - Plan Request Indicator
Data type: PLAN_REQUESTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_TRIP_APPLICATION -
Data type: RDYNNUOptional: Yes
Call by Reference: No ( called with pass by value option)
I_LANGUAGE - Language Key
Data type: BAPITRVXXX-LANGUDefault: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_GENERAL_DATA - General Trip Data
Data type: PTRV_WEB_GENERAL_DATA_INTOptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for PTRA_WEB_EXPENSE_REPORT_SAVE_2
E_TRIPNUMBER - Trip Number
Data type: BAPITRIP-TRIPNOOptional: No
Call by Reference: No ( called with pass by value option)
ET_DEDUCTIONS - Deductions for Gratuitous Service During Trip
Data type: PTRV_WEB_DEDUCTIONS_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_TRANSPORT -
Data type: GLO_PTRV_WEB_TRANSPORT_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_COSTDIST_TRIP - Cost Distribution of Trip
Data type: PTRV_WEB_COSTDIST_TRIP_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_COSTDIST_ITIN - Cost Assignment of a Trip Destination
Data type: PTRV_WEB_COSTDIST_ITIN_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_COSTDIST_RECE - Cost Assignment of a Trip Receipt
Data type: PTRV_WEB_COSTDIST_RECE_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_COSTDIST_MILE - Cost Assignment of a Leg of Trip
Data type: PTRV_WEB_COSTDIST_MILE_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_HISTORY - History of Database Updates of Trip
Data type: PTRV_WEB_HISTORY_TOptional: No
Call by Reference: No ( called with pass by value option)
E_REQ_DOCUMENT - Delivery of Requested Travel Service Documents -> Web UI
Data type: FTPS_WEB_REQ_DOC_DELIVERY_OUTOptional: No
Call by Reference: No ( called with pass by value option)
ET_REQ_SERVICE - Table Type for Travel Service Requests - Web UI
Data type: FTPS_WEB_REQUEST_SERVICE_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_REQ_TAC - Table Type: Types of Transport/Accommodations in Request
Data type: PTRV_WEB_REQUEST_TAC_INT_TOptional: No
Call by Reference: No ( called with pass by value option)
E_PERIODNUMBER - Number of Trip Period
Data type: BAPITRVXXX-PERIODOptional: No
Call by Reference: No ( called with pass by value option)
ET_REQ_ESTC - Estimated Costs in Travel Request
Data type: PTRV_WEB_REQUEST_ESTC_INT_TOptional: No
Call by Reference: No ( called with pass by value option)
EV_SAVED_SUCCESSFUL - Checkbox
Data type: XFELDOptional: No
Call by Reference: No ( called with pass by value option)
E_FM_POSTING_DATE -
Data type: FM_POSTING_DATEOptional: No
Call by Reference: No ( called with pass by value option)
E_PERIODVERSION - Sequential Number of Period
Data type: PTRV_PERIO-PDVRSOptional: No
Call by Reference: No ( called with pass by value option)
E_GENERAL_DATA - General Trip Data for External Display
Data type: PTRV_WEB_GENERAL_DATA_EXTOptional: No
Call by Reference: No ( called with pass by value option)
E_EDITOR -
Data type: STRINGOptional: No
Call by Reference: No ( called with pass by value option)
ET_RECEIPTS - Trip Receipts
Data type: PTRV_WEB_RECEIPTS_EXT_T_2Optional: No
Call by Reference: No ( called with pass by value option)
ET_ADVANCES - Advances for the Trip
Data type: PTRV_WEB_ADVANCES_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_MILEAGE - Legs of Trip
Data type: PTRV_WEB_MILEAGE_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
ET_ITINERARY - Destinations of Trip
Data type: PTRV_WEB_ITINERARY_EXT_TOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for PTRA_WEB_EXPENSE_REPORT_SAVE_2
ET_RETURN - Return Parameter(s)
Data type: BAPIRETTABOptional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for PTRA_WEB_EXPENSE_REPORT_SAVE_2 Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lt_et_return | TYPE STANDARD TABLE OF BAPIRETTAB, " | |||
| lv_e_tripnumber | TYPE BAPITRIP-TRIPNO, " | |||
| lv_i_employeenumber | TYPE BAPIEMPL-PERNR, " | |||
| lv_it_receipts | TYPE PTRV_WEB_RECEIPTS_INT_T_2, " | |||
| lv_et_deductions | TYPE PTRV_WEB_DEDUCTIONS_EXT_T, " | |||
| lv_it_advances | TYPE PTRV_WEB_ADVANCES_INT_T, " | |||
| lv_et_transport | TYPE GLO_PTRV_WEB_TRANSPORT_EXT_T, " | |||
| lv_it_mileage | TYPE PTRV_WEB_MILEAGE_INT_T, " | |||
| lv_et_costdist_trip | TYPE PTRV_WEB_COSTDIST_TRIP_EXT_T, " | |||
| lv_it_itinerary | TYPE PTRV_WEB_ITINERARY_INT_T, " | |||
| lv_et_costdist_itin | TYPE PTRV_WEB_COSTDIST_ITIN_EXT_T, " | |||
| lv_it_deductions | TYPE PTRV_WEB_DEDUCTIONS_INT_T, " | |||
| lv_et_costdist_rece | TYPE PTRV_WEB_COSTDIST_RECE_EXT_T, " | |||
| lv_it_transport | TYPE GLO_PTRV_WEB_TRANSPORT_INT_T, " | |||
| lv_et_costdist_mile | TYPE PTRV_WEB_COSTDIST_MILE_EXT_T, " | |||
| lv_et_history | TYPE PTRV_WEB_HISTORY_T, " | |||
| lv_it_costdist_trip | TYPE PTRV_WEB_COSTDIST_TRIP_INT_T, " | |||
| lv_e_req_document | TYPE FTPS_WEB_REQ_DOC_DELIVERY_OUT, " | |||
| lv_it_costdist_itin | TYPE PTRV_WEB_COSTDIST_ITIN_INT_T, " | |||
| lv_et_req_service | TYPE FTPS_WEB_REQUEST_SERVICE_T, " | |||
| lv_it_costdist_rece | TYPE PTRV_WEB_COSTDIST_RECE_INT_T, " | |||
| lv_et_req_tac | TYPE PTRV_WEB_REQUEST_TAC_INT_T, " | |||
| lv_it_costdist_mile | TYPE PTRV_WEB_COSTDIST_MILE_INT_T, " | |||
| lv_i_tripnumber | TYPE BAPITRIP-TRIPNO, " | |||
| lv_e_periodnumber | TYPE BAPITRVXXX-PERIOD, " | |||
| lv_it_history | TYPE PTRV_WEB_HISTORY_T, " | |||
| lv_et_req_estc | TYPE PTRV_WEB_REQUEST_ESTC_INT_T, " | |||
| lv_i_editor | TYPE STRING, " | |||
| lv_ev_saved_successful | TYPE XFELD, " | |||
| lv_i_req_document | TYPE FTPS_WEB_REQ_DOC_DELIVERY_OUT, " | |||
| lv_e_fm_posting_date | TYPE FM_POSTING_DATE, " | |||
| lv_it_req_service | TYPE FTPS_WEB_REQUEST_SERVICE_T, " | |||
| lv_it_req_tac | TYPE PTRV_WEB_REQUEST_TAC_INT_T, " | |||
| lv_it_req_estc | TYPE PTRV_WEB_REQUEST_ESTC_INT_T, " | |||
| lv_iv_save_without_check | TYPE WDY_BOOLEAN, " | |||
| lv_i_fm_posting_date | TYPE FM_POSTING_DATE, " | |||
| lv_i_periodnumber | TYPE BAPITRVXXX-PERIOD, " | |||
| lv_e_periodversion | TYPE PTRV_PERIO-PDVRS, " | |||
| lv_e_general_data | TYPE PTRV_WEB_GENERAL_DATA_EXT, " | |||
| lv_i_periodversion | TYPE PTRV_PERIO-PDVRS, " | |||
| lv_e_editor | TYPE STRING, " | |||
| lv_i_trip_action | TYPE PTRV_TRIP_ACTION, " 'MOD' | |||
| lv_et_receipts | TYPE PTRV_WEB_RECEIPTS_EXT_T_2, " | |||
| lv_i_trip_component | TYPE PLAN_REQUEST, " SPACE | |||
| lv_et_advances | TYPE PTRV_WEB_ADVANCES_EXT_T, " | |||
| lv_i_trip_application | TYPE RDYNNU, " | |||
| lv_et_mileage | TYPE PTRV_WEB_MILEAGE_EXT_T, " | |||
| lv_i_language | TYPE BAPITRVXXX-LANGU, " SY-LANGU | |||
| lv_et_itinerary | TYPE PTRV_WEB_ITINERARY_EXT_T, " | |||
| lv_i_general_data | TYPE PTRV_WEB_GENERAL_DATA_INT. " |
|   CALL FUNCTION 'PTRA_WEB_EXPENSE_REPORT_SAVE_2' " |
| EXPORTING | ||
| I_EMPLOYEENUMBER | = lv_i_employeenumber | |
| IT_RECEIPTS | = lv_it_receipts | |
| IT_ADVANCES | = lv_it_advances | |
| IT_MILEAGE | = lv_it_mileage | |
| IT_ITINERARY | = lv_it_itinerary | |
| IT_DEDUCTIONS | = lv_it_deductions | |
| IT_TRANSPORT | = lv_it_transport | |
| IT_COSTDIST_TRIP | = lv_it_costdist_trip | |
| IT_COSTDIST_ITIN | = lv_it_costdist_itin | |
| IT_COSTDIST_RECE | = lv_it_costdist_rece | |
| IT_COSTDIST_MILE | = lv_it_costdist_mile | |
| I_TRIPNUMBER | = lv_i_tripnumber | |
| IT_HISTORY | = lv_it_history | |
| I_EDITOR | = lv_i_editor | |
| I_REQ_DOCUMENT | = lv_i_req_document | |
| IT_REQ_SERVICE | = lv_it_req_service | |
| IT_REQ_TAC | = lv_it_req_tac | |
| IT_REQ_ESTC | = lv_it_req_estc | |
| IV_SAVE_WITHOUT_CHECK | = lv_iv_save_without_check | |
| I_FM_POSTING_DATE | = lv_i_fm_posting_date | |
| I_PERIODNUMBER | = lv_i_periodnumber | |
| I_PERIODVERSION | = lv_i_periodversion | |
| I_TRIP_ACTION | = lv_i_trip_action | |
| I_TRIP_COMPONENT | = lv_i_trip_component | |
| I_TRIP_APPLICATION | = lv_i_trip_application | |
| I_LANGUAGE | = lv_i_language | |
| I_GENERAL_DATA | = lv_i_general_data | |
| IMPORTING | ||
| E_TRIPNUMBER | = lv_e_tripnumber | |
| ET_DEDUCTIONS | = lv_et_deductions | |
| ET_TRANSPORT | = lv_et_transport | |
| ET_COSTDIST_TRIP | = lv_et_costdist_trip | |
| ET_COSTDIST_ITIN | = lv_et_costdist_itin | |
| ET_COSTDIST_RECE | = lv_et_costdist_rece | |
| ET_COSTDIST_MILE | = lv_et_costdist_mile | |
| ET_HISTORY | = lv_et_history | |
| E_REQ_DOCUMENT | = lv_e_req_document | |
| ET_REQ_SERVICE | = lv_et_req_service | |
| ET_REQ_TAC | = lv_et_req_tac | |
| E_PERIODNUMBER | = lv_e_periodnumber | |
| ET_REQ_ESTC | = lv_et_req_estc | |
| EV_SAVED_SUCCESSFUL | = lv_ev_saved_successful | |
| E_FM_POSTING_DATE | = lv_e_fm_posting_date | |
| E_PERIODVERSION | = lv_e_periodversion | |
| E_GENERAL_DATA | = lv_e_general_data | |
| E_EDITOR | = lv_e_editor | |
| ET_RECEIPTS | = lv_et_receipts | |
| ET_ADVANCES | = lv_et_advances | |
| ET_MILEAGE | = lv_et_mileage | |
| ET_ITINERARY | = lv_et_itinerary | |
| TABLES | ||
| ET_RETURN | = lt_et_return | |
| . " PTRA_WEB_EXPENSE_REPORT_SAVE_2 | ||
ABAP code using 7.40 inline data declarations to call FM PTRA_WEB_EXPENSE_REPORT_SAVE_2
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single TRIPNO FROM BAPITRIP INTO @DATA(ld_e_tripnumber). | ||||
| "SELECT single PERNR FROM BAPIEMPL INTO @DATA(ld_i_employeenumber). | ||||
| "SELECT single TRIPNO FROM BAPITRIP INTO @DATA(ld_i_tripnumber). | ||||
| "SELECT single PERIOD FROM BAPITRVXXX INTO @DATA(ld_e_periodnumber). | ||||
| "SELECT single PERIOD FROM BAPITRVXXX INTO @DATA(ld_i_periodnumber). | ||||
| "SELECT single PDVRS FROM PTRV_PERIO INTO @DATA(ld_e_periodversion). | ||||
| "SELECT single PDVRS FROM PTRV_PERIO INTO @DATA(ld_i_periodversion). | ||||
| DATA(ld_i_trip_action) | = 'MOD'. | |||
| DATA(ld_i_trip_component) | = ' '. | |||
| "SELECT single LANGU FROM BAPITRVXXX INTO @DATA(ld_i_language). | ||||
| DATA(ld_i_language) | = SY-LANGU. | |||
Search for further information about these or an SAP related objects