SAP BBP_PD_PO_UPDATE Function Module for Ändern Bestellung
BBP_PD_PO_UPDATE is a standard bbp pd po update SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Ändern Bestellung processing and below is the pattern details for this FM, 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 bbp pd po update FM, simply by entering the name BBP_PD_PO_UPDATE into the relevant SAP transaction such as SE37 or SE38.
Function Group: BBP_PD_PO
Program Name: SAPLBBP_PD_PO
Main Program: SAPLBBP_PD_PO
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function BBP_PD_PO_UPDATE 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 'BBP_PD_PO_UPDATE'"Ändern Bestellung.
EXPORTING
* I_PARK = "X: Daten sichern mit Status 'geparkt'
I_HEADER = "Schnittstelle Kopf-Daten Beschaffungs-Beleg
* I_SAVE = "X: Vorgang 'bid_finish'/'confirm'/'post'/'quot_submit'/'order' setzen
* IV_REJECT = "X: Ablehnen durch Genehmiger
* IV_USE_GROUP_CONDITIONS = "X: Preise mit Gruppenkonditionen berechnen
* IT_ATTACH = "KW-Anlagen inkl. Dokument
* IV_WITH_CHANGE_APPROVAL = 'X' "Änderungen genehmigen? ('X': Ja/' ': Nein)
IMPORTING
E_CHANGED = "X: Daten wurden verändert
ES_HEADER = "Schnittstelle Kopf-Daten Bestellung GetDetail-Fall
TABLES
* I_ITEM = "Schnittstelle Positions-Daten Beschaffungs-Beleg
* I_SDLN = "Geschäftsvorgangsposition -Einteilung (Ausgabe an Anwendung)
* E_MESSAGES = "Fehlermeldungen zu einer PD-Methode
* I_HCF = "Tabellenartige Kunden- und Solutionfelder am Kopf
* I_ICF = "Tabellenartige Kunden- und Solutionfelder an der Position
* I_TOL = "Toleranzen
* I_ACCOUNT = "Kontierungs-Set
* I_PARTNER = "Geschäftspartner-Set
* I_CONFIRM = "Bestätigungs-Set
* I_LONGTEXT = "Langtexte zum Procurement Document
* I_LIMIT = "Limit-Set
* I_ORGDATA = "Datenbanktabelle Orgdaten-Set (Einkauf)
* I_TAX = "Steuern
* I_PRIDOC = "Belegkonditionen
IMPORTING Parameters details for BBP_PD_PO_UPDATE
I_PARK - X: Daten sichern mit Status 'geparkt'
Data type: XFELDOptional: Yes
Call by Reference: No ( called with pass by value option)
I_HEADER - Schnittstelle Kopf-Daten Beschaffungs-Beleg
Data type: BBP_PDS_PO_HEADER_UOptional: No
Call by Reference: No ( called with pass by value option)
I_SAVE - X: Vorgang 'bid_finish'/'confirm'/'post'/'quot_submit'/'order' setzen
Data type: XFELDOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_REJECT - X: Ablehnen durch Genehmiger
Data type: XFELDOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_USE_GROUP_CONDITIONS - X: Preise mit Gruppenkonditionen berechnen
Data type: XFELDOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ATTACH - KW-Anlagen inkl. Dokument
Data type: BBPT_PDS_ATT_TOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_WITH_CHANGE_APPROVAL - Änderungen genehmigen? ('X': Ja/' ': Nein)
Data type: XFELDDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for BBP_PD_PO_UPDATE
E_CHANGED - X: Daten wurden verändert
Data type: XFELDOptional: No
Call by Reference: No ( called with pass by value option)
ES_HEADER - Schnittstelle Kopf-Daten Bestellung GetDetail-Fall
Data type: BBP_PDS_PO_HEADER_DOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for BBP_PD_PO_UPDATE
I_ITEM - Schnittstelle Positions-Daten Beschaffungs-Beleg
Data type: BBP_PDS_PO_ITEM_ICUOptional: Yes
Call by Reference: No ( called with pass by value option)
I_SDLN - Geschäftsvorgangsposition -Einteilung (Ausgabe an Anwendung)
Data type: BBP_PDS_SDLNOptional: Yes
Call by Reference: Yes
E_MESSAGES - Fehlermeldungen zu einer PD-Methode
Data type: BBP_PDS_MESSAGESOptional: Yes
Call by Reference: No ( called with pass by value option)
I_HCF - Tabellenartige Kunden- und Solutionfelder am Kopf
Data type: BBP_PDS_HCF_POOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ICF - Tabellenartige Kunden- und Solutionfelder an der Position
Data type: BBP_PDS_ICF_POOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TOL - Toleranzen
Data type: BBP_PDS_TOLOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ACCOUNT - Kontierungs-Set
Data type: BBP_PDS_ACCOptional: Yes
Call by Reference: No ( called with pass by value option)
I_PARTNER - Geschäftspartner-Set
Data type: BBP_PDS_PARTNEROptional: Yes
Call by Reference: No ( called with pass by value option)
I_CONFIRM - Bestätigungs-Set
Data type: BBP_PDS_CONOptional: Yes
Call by Reference: No ( called with pass by value option)
I_LONGTEXT - Langtexte zum Procurement Document
Data type: BBP_PDS_LONGTEXTOptional: Yes
Call by Reference: No ( called with pass by value option)
I_LIMIT - Limit-Set
Data type: BBP_PDS_LIMITOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ORGDATA - Datenbanktabelle Orgdaten-Set (Einkauf)
Data type: BBP_PDS_ORGOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TAX - Steuern
Data type: BBP_PDS_TAXOptional: Yes
Call by Reference: No ( called with pass by value option)
I_PRIDOC - Belegkonditionen
Data type: BBP_PDS_PRCOptional: Yes
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for BBP_PD_PO_UPDATE 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_i_item | TYPE STANDARD TABLE OF BBP_PDS_PO_ITEM_ICU, " | |||
| lv_i_park | TYPE XFELD, " | |||
| lv_e_changed | TYPE XFELD, " | |||
| lt_i_sdln | TYPE STANDARD TABLE OF BBP_PDS_SDLN, " | |||
| lt_e_messages | TYPE STANDARD TABLE OF BBP_PDS_MESSAGES, " | |||
| lt_i_hcf | TYPE STANDARD TABLE OF BBP_PDS_HCF_PO, " | |||
| lt_i_icf | TYPE STANDARD TABLE OF BBP_PDS_ICF_PO, " | |||
| lt_i_tol | TYPE STANDARD TABLE OF BBP_PDS_TOL, " | |||
| lv_i_header | TYPE BBP_PDS_PO_HEADER_U, " | |||
| lv_es_header | TYPE BBP_PDS_PO_HEADER_D, " | |||
| lt_i_account | TYPE STANDARD TABLE OF BBP_PDS_ACC, " | |||
| lv_i_save | TYPE XFELD, " | |||
| lt_i_partner | TYPE STANDARD TABLE OF BBP_PDS_PARTNER, " | |||
| lv_iv_reject | TYPE XFELD, " | |||
| lt_i_confirm | TYPE STANDARD TABLE OF BBP_PDS_CON, " | |||
| lt_i_longtext | TYPE STANDARD TABLE OF BBP_PDS_LONGTEXT, " | |||
| lv_iv_use_group_conditions | TYPE XFELD, " | |||
| lt_i_limit | TYPE STANDARD TABLE OF BBP_PDS_LIMIT, " | |||
| lv_it_attach | TYPE BBPT_PDS_ATT_T, " | |||
| lt_i_orgdata | TYPE STANDARD TABLE OF BBP_PDS_ORG, " | |||
| lv_iv_with_change_approval | TYPE XFELD, " 'X' | |||
| lt_i_tax | TYPE STANDARD TABLE OF BBP_PDS_TAX, " | |||
| lt_i_pridoc | TYPE STANDARD TABLE OF BBP_PDS_PRC. " |
|   CALL FUNCTION 'BBP_PD_PO_UPDATE' "Ändern Bestellung |
| EXPORTING | ||
| I_PARK | = lv_i_park | |
| I_HEADER | = lv_i_header | |
| I_SAVE | = lv_i_save | |
| IV_REJECT | = lv_iv_reject | |
| IV_USE_GROUP_CONDITIONS | = lv_iv_use_group_conditions | |
| IT_ATTACH | = lv_it_attach | |
| IV_WITH_CHANGE_APPROVAL | = lv_iv_with_change_approval | |
| IMPORTING | ||
| E_CHANGED | = lv_e_changed | |
| ES_HEADER | = lv_es_header | |
| TABLES | ||
| I_ITEM | = lt_i_item | |
| I_SDLN | = lt_i_sdln | |
| E_MESSAGES | = lt_e_messages | |
| I_HCF | = lt_i_hcf | |
| I_ICF | = lt_i_icf | |
| I_TOL | = lt_i_tol | |
| I_ACCOUNT | = lt_i_account | |
| I_PARTNER | = lt_i_partner | |
| I_CONFIRM | = lt_i_confirm | |
| I_LONGTEXT | = lt_i_longtext | |
| I_LIMIT | = lt_i_limit | |
| I_ORGDATA | = lt_i_orgdata | |
| I_TAX | = lt_i_tax | |
| I_PRIDOC | = lt_i_pridoc | |
| . " BBP_PD_PO_UPDATE | ||
ABAP code using 7.40 inline data declarations to call FM BBP_PD_PO_UPDATE
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.| DATA(ld_iv_with_change_approval) | = 'X'. | |||
Search for further information about these or an SAP related objects