SAP BKK_PAYM_ORDER_CHK_SDD_POST Function Module for Payment Order: Check whether an SDD can be posted
BKK_PAYM_ORDER_CHK_SDD_POST is a standard bkk paym order chk sdd post SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Payment Order: Check whether an SDD can be posted 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 bkk paym order chk sdd post FM, simply by entering the name BKK_PAYM_ORDER_CHK_SDD_POST into the relevant SAP transaction such as SE37 or SE38.
Function Group: FBP4
Program Name: SAPLFBP4
Main Program: SAPLFBP4
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function BKK_PAYM_ORDER_CHK_SDD_POST 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 'BKK_PAYM_ORDER_CHK_SDD_POST'"Payment Order: Check whether an SDD can be posted.
EXPORTING
I_POSTDATE = "Posting date
* I_FLG_CHK_RECURRING = ' ' "Check Recurring SEPA Direct Debits
* I_FLG_CHK_DUE_HOLIDAY = 'X' "Check whether Due date is a Holiday
* I_FLG_CHK_MAND_CHNG_RECURRING = 'X' "Check whether Mandate has changed from last use to this
* I_TAB_MANDATE = "Table type for Mandates for recipients
* I_SYSPOSTDATE = "Current Posting Date
I_DUEDATE = "Due Date
I_PAYMETHOD = "Payment Method
* I_TCUR = "Transaction Currency
* I_FLG_FIRST_RUN = 'X' "Obsolete
* I_CAL_ID1 = "Public Holiday Calendar Key 1
* I_CAL_ID2 = "Public Holiday Calendar Key 2
* I_XMESSAGE = 'X' "Display Messages
* I_XCHK_POST_DUE_ONLY = ' ' "Check whether posting date lies between ecd and lcd only
IMPORTING
E_ECD = "Earliest Creation Date
E_LCD = "Latest Creation Date
E_NEAREST_PST_DATE = "Nearest Posting date
E_TAB_MESSAGE = "Return Code and corresponding Message
E_RC = "Return Value of ABAP Statements
E_IBB_DAYS = "Min IBW days before due date
EXCEPTIONS
IMPORT_ERROR = 1 SYSTEM_ERROR = 2
IMPORTING Parameters details for BKK_PAYM_ORDER_CHK_SDD_POST
I_POSTDATE - Posting date
Data type: BKK_PSTDATOptional: No
Call by Reference: Yes
I_FLG_CHK_RECURRING - Check Recurring SEPA Direct Debits
Data type: BKK_XFELDDefault: SPACE
Optional: Yes
Call by Reference: Yes
I_FLG_CHK_DUE_HOLIDAY - Check whether Due date is a Holiday
Data type: BKK_XFELDDefault: 'X'
Optional: Yes
Call by Reference: Yes
I_FLG_CHK_MAND_CHNG_RECURRING - Check whether Mandate has changed from last use to this
Data type: BKK_XFELDDefault: 'X'
Optional: Yes
Call by Reference: Yes
I_TAB_MANDATE - Table type for Mandates for recipients
Data type: BKK_TAB_MANDATE_RECOptional: Yes
Call by Reference: Yes
I_SYSPOSTDATE - Current Posting Date
Data type: BKK_PSTDATOptional: Yes
Call by Reference: Yes
I_DUEDATE - Due Date
Data type: BKK_DTE_DATE_DUEOptional: No
Call by Reference: Yes
I_PAYMETHOD - Payment Method
Data type: BKK_PAYMETOptional: No
Call by Reference: Yes
I_TCUR - Transaction Currency
Data type: BKK_TCUROptional: Yes
Call by Reference: Yes
I_FLG_FIRST_RUN - Obsolete
Data type: BKK_DTE_FLG_SDD_FIRST_RUNDefault: 'X'
Optional: Yes
Call by Reference: Yes
I_CAL_ID1 - Public Holiday Calendar Key 1
Data type: BKK_CAL1Optional: Yes
Call by Reference: Yes
I_CAL_ID2 - Public Holiday Calendar Key 2
Data type: BKK_CAL2Optional: Yes
Call by Reference: Yes
I_XMESSAGE - Display Messages
Data type: BKK_XFELDDefault: 'X'
Optional: Yes
Call by Reference: Yes
I_XCHK_POST_DUE_ONLY - Check whether posting date lies between ecd and lcd only
Data type: BKK_XFELDDefault: SPACE
Optional: Yes
Call by Reference: Yes
EXPORTING Parameters details for BKK_PAYM_ORDER_CHK_SDD_POST
E_ECD - Earliest Creation Date
Data type: BKK_DTE_DAT_SDD_ECDOptional: No
Call by Reference: Yes
E_LCD - Latest Creation Date
Data type: BKK_DTE_DAT_SDD_LCDOptional: No
Call by Reference: Yes
E_NEAREST_PST_DATE - Nearest Posting date
Data type: BKK_PSTDATOptional: No
Call by Reference: Yes
E_TAB_MESSAGE - Return Code and corresponding Message
Data type: BKK_TAB_MSG_COL_MESSAGEOptional: No
Call by Reference: Yes
E_RC - Return Value of ABAP Statements
Data type: SY-SUBRCOptional: No
Call by Reference: No ( called with pass by value option)
E_IBB_DAYS - Min IBW days before due date
Data type: TBKK_SDD_DAYS-IBB_DAYSMIN_FIRSOptional: No
Call by Reference: Yes
EXCEPTIONS details
IMPORT_ERROR - Error in the Mandatory import parameters
Data type:Optional: No
Call by Reference: Yes
SYSTEM_ERROR - SEPA Direct Debit checks failed
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for BKK_PAYM_ORDER_CHK_SDD_POST 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: | ||||
| lv_e_ecd | TYPE BKK_DTE_DAT_SDD_ECD, " | |||
| lv_i_postdate | TYPE BKK_PSTDAT, " | |||
| lv_import_error | TYPE BKK_PSTDAT, " | |||
| lv_i_flg_chk_recurring | TYPE BKK_XFELD, " SPACE | |||
| lv_i_flg_chk_due_holiday | TYPE BKK_XFELD, " 'X' | |||
| lv_i_flg_chk_mand_chng_recurring | TYPE BKK_XFELD, " 'X' | |||
| lv_i_tab_mandate | TYPE BKK_TAB_MANDATE_REC, " | |||
| lv_i_syspostdate | TYPE BKK_PSTDAT, " | |||
| lv_e_lcd | TYPE BKK_DTE_DAT_SDD_LCD, " | |||
| lv_i_duedate | TYPE BKK_DTE_DATE_DUE, " | |||
| lv_system_error | TYPE BKK_DTE_DATE_DUE, " | |||
| lv_i_paymethod | TYPE BKK_PAYMET, " | |||
| lv_e_nearest_pst_date | TYPE BKK_PSTDAT, " | |||
| lv_i_tcur | TYPE BKK_TCUR, " | |||
| lv_e_tab_message | TYPE BKK_TAB_MSG_COL_MESSAGE, " | |||
| lv_e_rc | TYPE SY-SUBRC, " | |||
| lv_i_flg_first_run | TYPE BKK_DTE_FLG_SDD_FIRST_RUN, " 'X' | |||
| lv_i_cal_id1 | TYPE BKK_CAL1, " | |||
| lv_e_ibb_days | TYPE TBKK_SDD_DAYS-IBB_DAYSMIN_FIRS, " | |||
| lv_i_cal_id2 | TYPE BKK_CAL2, " | |||
| lv_i_xmessage | TYPE BKK_XFELD, " 'X' | |||
| lv_i_xchk_post_due_only | TYPE BKK_XFELD. " SPACE |
|   CALL FUNCTION 'BKK_PAYM_ORDER_CHK_SDD_POST' "Payment Order: Check whether an SDD can be posted |
| EXPORTING | ||
| I_POSTDATE | = lv_i_postdate | |
| I_FLG_CHK_RECURRING | = lv_i_flg_chk_recurring | |
| I_FLG_CHK_DUE_HOLIDAY | = lv_i_flg_chk_due_holiday | |
| I_FLG_CHK_MAND_CHNG_RECURRING | = lv_i_flg_chk_mand_chng_recurring | |
| I_TAB_MANDATE | = lv_i_tab_mandate | |
| I_SYSPOSTDATE | = lv_i_syspostdate | |
| I_DUEDATE | = lv_i_duedate | |
| I_PAYMETHOD | = lv_i_paymethod | |
| I_TCUR | = lv_i_tcur | |
| I_FLG_FIRST_RUN | = lv_i_flg_first_run | |
| I_CAL_ID1 | = lv_i_cal_id1 | |
| I_CAL_ID2 | = lv_i_cal_id2 | |
| I_XMESSAGE | = lv_i_xmessage | |
| I_XCHK_POST_DUE_ONLY | = lv_i_xchk_post_due_only | |
| IMPORTING | ||
| E_ECD | = lv_e_ecd | |
| E_LCD | = lv_e_lcd | |
| E_NEAREST_PST_DATE | = lv_e_nearest_pst_date | |
| E_TAB_MESSAGE | = lv_e_tab_message | |
| E_RC | = lv_e_rc | |
| E_IBB_DAYS | = lv_e_ibb_days | |
| EXCEPTIONS | ||
| IMPORT_ERROR = 1 | ||
| SYSTEM_ERROR = 2 | ||
| . " BKK_PAYM_ORDER_CHK_SDD_POST | ||
ABAP code using 7.40 inline data declarations to call FM BKK_PAYM_ORDER_CHK_SDD_POST
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_i_flg_chk_recurring) | = ' '. | |||
| DATA(ld_i_flg_chk_due_holiday) | = 'X'. | |||
| DATA(ld_i_flg_chk_mand_chng_recurring) | = 'X'. | |||
| "SELECT single SUBRC FROM SY INTO @DATA(ld_e_rc). | ||||
| DATA(ld_i_flg_first_run) | = 'X'. | |||
| "SELECT single IBB_DAYSMIN_FIRS FROM TBKK_SDD_DAYS INTO @DATA(ld_e_ibb_days). | ||||
| DATA(ld_i_xmessage) | = 'X'. | |||
| DATA(ld_i_xchk_post_due_only) | = ' '. | |||
Search for further information about these or an SAP related objects