SAP CJPN_PROJECT_ACCOUNT Function Module for NOTRANSL: Kontierungspruefung Projektnummer Kosten/Erloese
CJPN_PROJECT_ACCOUNT is a standard cjpn project account SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for NOTRANSL: Kontierungspruefung Projektnummer Kosten/Erloese 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 cjpn project account FM, simply by entering the name CJPN_PROJECT_ACCOUNT into the relevant SAP transaction such as SE37 or SE38.
Function Group: CJPN
Program Name: SAPLCJPN
Main Program: SAPLCJPN
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function CJPN_PROJECT_ACCOUNT 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 'CJPN_PROJECT_ACCOUNT'"NOTRANSL: Kontierungspruefung Projektnummer Kosten/Erloese.
EXPORTING
* ACTIVITY = ' ' "Operation
* TEST_KOKRS = ' ' "Controlling area
* FIKRS = ' ' "Financial management area
* FIPOS = ' ' "Commitment item
* BEKNZ = ' ' "Charge Indicator
* NO_STATUS_CHECK = ' ' "
* SORT_MSG = ' ' "
* I_ACTIVITY_CO = ' ' "
* I_SOBKZ = ' ' "Special Stock Indicator
* I_KZBWS = ' ' "Valuation of Special Stock
* CHANGE_STATUS = ' ' "Carry out status change, if possible
* GBBIL = ' ' "
INT_NUM = "
* KATYP = ' ' "
* NO_BUFFER = ' ' "Flag: do not buffer WBS element
* RKBUK = ' ' "
* TEST_BUKRS = ' ' "Company code
* TEST_GSBER = ' ' "Business area
IMPORTING
ERROR_OCCURRED = "Error occurred
E_VNAME = "
E_WAERS = "
E_XSTAT = "Statistical WBS element
WARNING_OCCURRED = "Flag: warning message occurred
E_TXJCD = "Tax Jurisdiction Code
E_FKOKR = "
E_FKSTL = "Responsible Cost Center
E_KZBWS = "Valuation Control
E_PSPNR = "WBS Element
E_KOSTL = "
E_BUKRS = "
E_PLINT = "
E_FUNC_AREA = "Functional Area
E_LOGSYSTEM = "Logical System
E_ETYPE = "
E_GSBER = "
E_KOKRS = "
E_OBJNR = "
E_PRCTR = "
E_RECID = "
E_SCOPE = "Object Class
EXCEPTIONS
BILLING_PLAN_LOCKED = 1 WRONG_GSBER = 10 WRONG_KOKRS = 11 INPUT_ERROR = 2 NOT_ALLOWED = 3 NOT_FOUND = 4 NO_ACCOUNT_ELEMENT = 5 NO_GSBER = 6 NO_INVOICE_ELEMENT = 7 OBJECT_NOT_FOUND = 8 WRONG_BUKRS = 9
IMPORTING Parameters details for CJPN_PROJECT_ACCOUNT
ACTIVITY - Operation
Data type: TJ01-VRGNGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TEST_KOKRS - Controlling area
Data type: PRPS-PKOKRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FIKRS - Financial management area
Data type: FMFPO-FIKRSDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
FIPOS - Commitment item
Data type: FMFPO-FIPOSDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
BEKNZ - Charge Indicator
Data type: COEP-BEKNZDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
NO_STATUS_CHECK -
Data type: RCWBS-SEL01Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
SORT_MSG -
Data type: MESG-ZEILEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ACTIVITY_CO -
Data type: TJ01-VRGNGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_SOBKZ - Special Stock Indicator
Data type: RESB-SOBKZDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_KZBWS - Valuation of Special Stock
Data type: RESB-KZBWSDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
CHANGE_STATUS - Carry out status change, if possible
Data type: RCWBS-SEL01Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
GBBIL -
Data type: T001-XGSBEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
INT_NUM -
Data type: PRPS-PSPNROptional: No
Call by Reference: No ( called with pass by value option)
KATYP -
Data type: CSKB-KATYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
NO_BUFFER - Flag: do not buffer WBS element
Data type: RCWBS-SEL01Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
RKBUK -
Data type: TKA00-RKBUKDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TEST_BUKRS - Company code
Data type: PRPS-PBUKRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TEST_GSBER - Business area
Data type: PRPS-PGSBRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CJPN_PROJECT_ACCOUNT
ERROR_OCCURRED - Error occurred
Data type: RCWBS-SEL01Optional: No
Call by Reference: No ( called with pass by value option)
E_VNAME -
Data type: PRPS-VNAMEOptional: No
Call by Reference: No ( called with pass by value option)
E_WAERS -
Data type: PRPS-PWPOSOptional: No
Call by Reference: No ( called with pass by value option)
E_XSTAT - Statistical WBS element
Data type: PRPS-XSTATOptional: No
Call by Reference: No ( called with pass by value option)
WARNING_OCCURRED - Flag: warning message occurred
Data type: RCWBS-SEL01Optional: No
Call by Reference: No ( called with pass by value option)
E_TXJCD - Tax Jurisdiction Code
Data type: PRPS-TXJCDOptional: No
Call by Reference: No ( called with pass by value option)
E_FKOKR -
Data type: PRPS-FKOKROptional: No
Call by Reference: No ( called with pass by value option)
E_FKSTL - Responsible Cost Center
Data type: PRPS-FKSTLOptional: No
Call by Reference: No ( called with pass by value option)
E_KZBWS - Valuation Control
Data type: PRPS-KZBWSOptional: No
Call by Reference: No ( called with pass by value option)
E_PSPNR - WBS Element
Data type: PRPS-PSPNROptional: No
Call by Reference: No ( called with pass by value option)
E_KOSTL -
Data type: PRPS-KOSTLOptional: No
Call by Reference: No ( called with pass by value option)
E_BUKRS -
Data type: PRPS-PBUKROptional: No
Call by Reference: No ( called with pass by value option)
E_PLINT -
Data type: PRPS-PLINTOptional: No
Call by Reference: No ( called with pass by value option)
E_FUNC_AREA - Functional Area
Data type: PRPS-FUNC_AREAOptional: No
Call by Reference: No ( called with pass by value option)
E_LOGSYSTEM - Logical System
Data type: PRPS-LOGSYSTEMOptional: No
Call by Reference: No ( called with pass by value option)
E_ETYPE -
Data type: PRPS-ETYPEOptional: No
Call by Reference: No ( called with pass by value option)
E_GSBER -
Data type: PRPS-PGSBROptional: No
Call by Reference: No ( called with pass by value option)
E_KOKRS -
Data type: PRPS-PKOKROptional: No
Call by Reference: No ( called with pass by value option)
E_OBJNR -
Data type: PRPS-OBJNROptional: No
Call by Reference: No ( called with pass by value option)
E_PRCTR -
Data type: PRPS-PRCTROptional: No
Call by Reference: No ( called with pass by value option)
E_RECID -
Data type: PRPS-RECIDOptional: No
Call by Reference: No ( called with pass by value option)
E_SCOPE - Object Class
Data type: PRPS-SCOPEOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
BILLING_PLAN_LOCKED -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
WRONG_GSBER - WBS element is assigned to another business area
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
WRONG_KOKRS - WBS element is assigned to another controlling area
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
INPUT_ERROR - Incorrect entry
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NOT_ALLOWED - Transaction not allowed
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NOT_FOUND - WBS element does not exist
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_ACCOUNT_ELEMENT - No account assignment element
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_GSBER - WBS element is not assigned to a business area
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_INVOICE_ELEMENT - No billing element
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
OBJECT_NOT_FOUND - Object number does not exist
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
WRONG_BUKRS - WBS element is assigned to another company code
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for CJPN_PROJECT_ACCOUNT 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_activity | TYPE TJ01-VRGNG, " SPACE | |||
| lv_error_occurred | TYPE RCWBS-SEL01, " | |||
| lv_billing_plan_locked | TYPE RCWBS, " | |||
| lv_e_vname | TYPE PRPS-VNAME, " | |||
| lv_test_kokrs | TYPE PRPS-PKOKR, " SPACE | |||
| lv_wrong_gsber | TYPE PRPS, " | |||
| lv_fikrs | TYPE FMFPO-FIKRS, " SPACE | |||
| lv_e_waers | TYPE PRPS-PWPOS, " | |||
| lv_wrong_kokrs | TYPE PRPS, " | |||
| lv_fipos | TYPE FMFPO-FIPOS, " SPACE | |||
| lv_e_xstat | TYPE PRPS-XSTAT, " | |||
| lv_beknz | TYPE COEP-BEKNZ, " SPACE | |||
| lv_warning_occurred | TYPE RCWBS-SEL01, " | |||
| lv_e_txjcd | TYPE PRPS-TXJCD, " | |||
| lv_no_status_check | TYPE RCWBS-SEL01, " SPACE | |||
| lv_e_fkokr | TYPE PRPS-FKOKR, " | |||
| lv_sort_msg | TYPE MESG-ZEILE, " SPACE | |||
| lv_e_fkstl | TYPE PRPS-FKSTL, " | |||
| lv_i_activity_co | TYPE TJ01-VRGNG, " SPACE | |||
| lv_e_kzbws | TYPE PRPS-KZBWS, " | |||
| lv_i_sobkz | TYPE RESB-SOBKZ, " SPACE | |||
| lv_e_pspnr | TYPE PRPS-PSPNR, " | |||
| lv_i_kzbws | TYPE RESB-KZBWS, " SPACE | |||
| lv_e_kostl | TYPE PRPS-KOSTL, " | |||
| lv_e_bukrs | TYPE PRPS-PBUKR, " | |||
| lv_input_error | TYPE PRPS, " | |||
| lv_change_status | TYPE RCWBS-SEL01, " SPACE | |||
| lv_e_plint | TYPE PRPS-PLINT, " | |||
| lv_e_func_area | TYPE PRPS-FUNC_AREA, " | |||
| lv_e_logsystem | TYPE PRPS-LOGSYSTEM, " | |||
| lv_gbbil | TYPE T001-XGSBE, " SPACE | |||
| lv_e_etype | TYPE PRPS-ETYPE, " | |||
| lv_not_allowed | TYPE PRPS, " | |||
| lv_e_gsber | TYPE PRPS-PGSBR, " | |||
| lv_int_num | TYPE PRPS-PSPNR, " | |||
| lv_not_found | TYPE PRPS, " | |||
| lv_katyp | TYPE CSKB-KATYP, " SPACE | |||
| lv_e_kokrs | TYPE PRPS-PKOKR, " | |||
| lv_no_account_element | TYPE PRPS, " | |||
| lv_e_objnr | TYPE PRPS-OBJNR, " | |||
| lv_no_gsber | TYPE PRPS, " | |||
| lv_no_buffer | TYPE RCWBS-SEL01, " SPACE | |||
| lv_rkbuk | TYPE TKA00-RKBUK, " SPACE | |||
| lv_e_prctr | TYPE PRPS-PRCTR, " | |||
| lv_no_invoice_element | TYPE PRPS, " | |||
| lv_e_recid | TYPE PRPS-RECID, " | |||
| lv_test_bukrs | TYPE PRPS-PBUKR, " SPACE | |||
| lv_object_not_found | TYPE PRPS, " | |||
| lv_e_scope | TYPE PRPS-SCOPE, " | |||
| lv_test_gsber | TYPE PRPS-PGSBR, " SPACE | |||
| lv_wrong_bukrs | TYPE PRPS. " |
|   CALL FUNCTION 'CJPN_PROJECT_ACCOUNT' "NOTRANSL: Kontierungspruefung Projektnummer Kosten/Erloese |
| EXPORTING | ||
| ACTIVITY | = lv_activity | |
| TEST_KOKRS | = lv_test_kokrs | |
| FIKRS | = lv_fikrs | |
| FIPOS | = lv_fipos | |
| BEKNZ | = lv_beknz | |
| NO_STATUS_CHECK | = lv_no_status_check | |
| SORT_MSG | = lv_sort_msg | |
| I_ACTIVITY_CO | = lv_i_activity_co | |
| I_SOBKZ | = lv_i_sobkz | |
| I_KZBWS | = lv_i_kzbws | |
| CHANGE_STATUS | = lv_change_status | |
| GBBIL | = lv_gbbil | |
| INT_NUM | = lv_int_num | |
| KATYP | = lv_katyp | |
| NO_BUFFER | = lv_no_buffer | |
| RKBUK | = lv_rkbuk | |
| TEST_BUKRS | = lv_test_bukrs | |
| TEST_GSBER | = lv_test_gsber | |
| IMPORTING | ||
| ERROR_OCCURRED | = lv_error_occurred | |
| E_VNAME | = lv_e_vname | |
| E_WAERS | = lv_e_waers | |
| E_XSTAT | = lv_e_xstat | |
| WARNING_OCCURRED | = lv_warning_occurred | |
| E_TXJCD | = lv_e_txjcd | |
| E_FKOKR | = lv_e_fkokr | |
| E_FKSTL | = lv_e_fkstl | |
| E_KZBWS | = lv_e_kzbws | |
| E_PSPNR | = lv_e_pspnr | |
| E_KOSTL | = lv_e_kostl | |
| E_BUKRS | = lv_e_bukrs | |
| E_PLINT | = lv_e_plint | |
| E_FUNC_AREA | = lv_e_func_area | |
| E_LOGSYSTEM | = lv_e_logsystem | |
| E_ETYPE | = lv_e_etype | |
| E_GSBER | = lv_e_gsber | |
| E_KOKRS | = lv_e_kokrs | |
| E_OBJNR | = lv_e_objnr | |
| E_PRCTR | = lv_e_prctr | |
| E_RECID | = lv_e_recid | |
| E_SCOPE | = lv_e_scope | |
| EXCEPTIONS | ||
| BILLING_PLAN_LOCKED = 1 | ||
| WRONG_GSBER = 10 | ||
| WRONG_KOKRS = 11 | ||
| INPUT_ERROR = 2 | ||
| NOT_ALLOWED = 3 | ||
| NOT_FOUND = 4 | ||
| NO_ACCOUNT_ELEMENT = 5 | ||
| NO_GSBER = 6 | ||
| NO_INVOICE_ELEMENT = 7 | ||
| OBJECT_NOT_FOUND = 8 | ||
| WRONG_BUKRS = 9 | ||
| . " CJPN_PROJECT_ACCOUNT | ||
ABAP code using 7.40 inline data declarations to call FM CJPN_PROJECT_ACCOUNT
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 VRGNG FROM TJ01 INTO @DATA(ld_activity). | ||||
| DATA(ld_activity) | = ' '. | |||
| "SELECT single SEL01 FROM RCWBS INTO @DATA(ld_error_occurred). | ||||
| "SELECT single VNAME FROM PRPS INTO @DATA(ld_e_vname). | ||||
| "SELECT single PKOKR FROM PRPS INTO @DATA(ld_test_kokrs). | ||||
| DATA(ld_test_kokrs) | = ' '. | |||
| "SELECT single FIKRS FROM FMFPO INTO @DATA(ld_fikrs). | ||||
| DATA(ld_fikrs) | = ' '. | |||
| "SELECT single PWPOS FROM PRPS INTO @DATA(ld_e_waers). | ||||
| "SELECT single FIPOS FROM FMFPO INTO @DATA(ld_fipos). | ||||
| DATA(ld_fipos) | = ' '. | |||
| "SELECT single XSTAT FROM PRPS INTO @DATA(ld_e_xstat). | ||||
| "SELECT single BEKNZ FROM COEP INTO @DATA(ld_beknz). | ||||
| DATA(ld_beknz) | = ' '. | |||
| "SELECT single SEL01 FROM RCWBS INTO @DATA(ld_warning_occurred). | ||||
| "SELECT single TXJCD FROM PRPS INTO @DATA(ld_e_txjcd). | ||||
| "SELECT single SEL01 FROM RCWBS INTO @DATA(ld_no_status_check). | ||||
| DATA(ld_no_status_check) | = ' '. | |||
| "SELECT single FKOKR FROM PRPS INTO @DATA(ld_e_fkokr). | ||||
| "SELECT single ZEILE FROM MESG INTO @DATA(ld_sort_msg). | ||||
| DATA(ld_sort_msg) | = ' '. | |||
| "SELECT single FKSTL FROM PRPS INTO @DATA(ld_e_fkstl). | ||||
| "SELECT single VRGNG FROM TJ01 INTO @DATA(ld_i_activity_co). | ||||
| DATA(ld_i_activity_co) | = ' '. | |||
| "SELECT single KZBWS FROM PRPS INTO @DATA(ld_e_kzbws). | ||||
| "SELECT single SOBKZ FROM RESB INTO @DATA(ld_i_sobkz). | ||||
| DATA(ld_i_sobkz) | = ' '. | |||
| "SELECT single PSPNR FROM PRPS INTO @DATA(ld_e_pspnr). | ||||
| "SELECT single KZBWS FROM RESB INTO @DATA(ld_i_kzbws). | ||||
| DATA(ld_i_kzbws) | = ' '. | |||
| "SELECT single KOSTL FROM PRPS INTO @DATA(ld_e_kostl). | ||||
| "SELECT single PBUKR FROM PRPS INTO @DATA(ld_e_bukrs). | ||||
| "SELECT single SEL01 FROM RCWBS INTO @DATA(ld_change_status). | ||||
| DATA(ld_change_status) | = ' '. | |||
| "SELECT single PLINT FROM PRPS INTO @DATA(ld_e_plint). | ||||
| "SELECT single FUNC_AREA FROM PRPS INTO @DATA(ld_e_func_area). | ||||
| "SELECT single LOGSYSTEM FROM PRPS INTO @DATA(ld_e_logsystem). | ||||
| "SELECT single XGSBE FROM T001 INTO @DATA(ld_gbbil). | ||||
| DATA(ld_gbbil) | = ' '. | |||
| "SELECT single ETYPE FROM PRPS INTO @DATA(ld_e_etype). | ||||
| "SELECT single PGSBR FROM PRPS INTO @DATA(ld_e_gsber). | ||||
| "SELECT single PSPNR FROM PRPS INTO @DATA(ld_int_num). | ||||
| "SELECT single KATYP FROM CSKB INTO @DATA(ld_katyp). | ||||
| DATA(ld_katyp) | = ' '. | |||
| "SELECT single PKOKR FROM PRPS INTO @DATA(ld_e_kokrs). | ||||
| "SELECT single OBJNR FROM PRPS INTO @DATA(ld_e_objnr). | ||||
| "SELECT single SEL01 FROM RCWBS INTO @DATA(ld_no_buffer). | ||||
| DATA(ld_no_buffer) | = ' '. | |||
| "SELECT single RKBUK FROM TKA00 INTO @DATA(ld_rkbuk). | ||||
| DATA(ld_rkbuk) | = ' '. | |||
| "SELECT single PRCTR FROM PRPS INTO @DATA(ld_e_prctr). | ||||
| "SELECT single RECID FROM PRPS INTO @DATA(ld_e_recid). | ||||
| "SELECT single PBUKR FROM PRPS INTO @DATA(ld_test_bukrs). | ||||
| DATA(ld_test_bukrs) | = ' '. | |||
| "SELECT single SCOPE FROM PRPS INTO @DATA(ld_e_scope). | ||||
| "SELECT single PGSBR FROM PRPS INTO @DATA(ld_test_gsber). | ||||
| DATA(ld_test_gsber) | = ' '. | |||
Search for further information about these or an SAP related objects