SAP CJDW_PRPS_GET Function Module for NOTRANSL: Lesen PRPS aus Belegtabelle
CJDW_PRPS_GET is a standard cjdw prps get 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: Lesen PRPS aus Belegtabelle 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 cjdw prps get FM, simply by entering the name CJDW_PRPS_GET into the relevant SAP transaction such as SE37 or SE38.
Function Group: CJDW
Program Name: SAPLCJDW
Main Program: SAPLCJDW
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function CJDW_PRPS_GET 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 'CJDW_PRPS_GET'"NOTRANSL: Lesen PRPS aus Belegtabelle.
EXPORTING
* DIALOGBOX = ' ' "Query with dialog box
* GET_FLAGS = ' ' "X = determine assignment flags (documents, PS text)
* INDEX = 0 "Index in document table
* OBJNR = ' ' "Gen. object number
* POSID = ' ' "WBS element (ext.ID)
* POSNR = 0 "Internal number
* SPSNR = 0 "Reference standard WBS element
IMPORTING
E_PRPS = "PRPS
AUT_TRMANZG = "Display authorization for dates
ACTCOS = "
ACTREV = "Act. Revenues Exist
PLNCOS = "Planned costs
PLNREV = "Revenues Planned
SUBDIV = "Indicator subdivided (+)
X_DOCUMENT = "X=Documents are assigned (see 'Get_Flags')
X_MLSTN = "X = Milestones are assigned (see 'Get_Flags')
X_PSTEXT = "X = PS texts are assigned (see 'Get_Flags')
NEW_ELEMENT = "X = WBS elem. not yet in database
E_POSID = "WBS element key (ID)
AUT_CHNGE = "
AUT_DISPL = "
E_POST1 = "
E_VSNMR = "
FLG_STA_LOE = "
INDEX_DOWN = "
FLG_INACT = "
ORGKEY_EXT = "
FLG_CHG_MODE = "
PSPNR_DOWN = "WBS Element
E_PSTABD = "
E_OBJNR = "Object Number
E_PSPNR = "WBS Element
IDENT = "Identification
INDEX = "Index in document table
INPUT = "Ready for input (authorization for change)
OUTPUT = "Display authorization (X)
AUT_PLANTRM = "Edit authorization for time scheduling
AUT_ISTTRM = "Enter authorization for actual dates
EXCEPTIONS
CANCEL = 1 NOT_FOUND = 2
IMPORTING Parameters details for CJDW_PRPS_GET
DIALOGBOX - Query with dialog box
Data type:Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
GET_FLAGS - X = determine assignment flags (documents, PS text)
Data type: RCJ_MARKL-MARKDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
INDEX - Index in document table
Data type: SY-TABIXOptional: Yes
Call by Reference: No ( called with pass by value option)
OBJNR - Gen. object number
Data type: PRPS-OBJNRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
POSID - WBS element (ext.ID)
Data type: PRPS-POSIDDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
POSNR - Internal number
Data type: PRPS-PSPNROptional: Yes
Call by Reference: No ( called with pass by value option)
SPSNR - Reference standard WBS element
Data type: PRPS-SPSNROptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CJDW_PRPS_GET
E_PRPS - PRPS
Data type: PRPSOptional: No
Call by Reference: No ( called with pass by value option)
AUT_TRMANZG - Display authorization for dates
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
ACTCOS -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
ACTREV - Act. Revenues Exist
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
PLNCOS - Planned costs
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
PLNREV - Revenues Planned
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
SUBDIV - Indicator subdivided (+)
Data type: RCWBS-UNTRGOptional: No
Call by Reference: No ( called with pass by value option)
X_DOCUMENT - X=Documents are assigned (see 'Get_Flags')
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
X_MLSTN - X = Milestones are assigned (see 'Get_Flags')
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
X_PSTEXT - X = PS texts are assigned (see 'Get_Flags')
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
NEW_ELEMENT - X = WBS elem. not yet in database
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
E_POSID - WBS element key (ID)
Data type: PRPS-POSIDOptional: No
Call by Reference: No ( called with pass by value option)
AUT_CHNGE -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
AUT_DISPL -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
E_POST1 -
Data type: PRPS-POST1Optional: No
Call by Reference: No ( called with pass by value option)
E_VSNMR -
Data type: VSKOPF-VSNMROptional: No
Call by Reference: No ( called with pass by value option)
FLG_STA_LOE -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
INDEX_DOWN -
Data type: SY-TABIXOptional: No
Call by Reference: No ( called with pass by value option)
FLG_INACT -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
ORGKEY_EXT -
Data type: VSPRPS_CN-ORGKEYOptional: No
Call by Reference: No ( called with pass by value option)
FLG_CHG_MODE -
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: Yes
PSPNR_DOWN - WBS Element
Data type: PRPS-PSPNROptional: No
Call by Reference: No ( called with pass by value option)
E_PSTABD -
Data type: PSTABDOptional: No
Call by Reference: No ( called with pass by value option)
E_OBJNR - Object Number
Data type: PRPS-OBJNROptional: 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)
IDENT - Identification
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
INDEX - Index in document table
Data type: SY-TABIXOptional: No
Call by Reference: No ( called with pass by value option)
INPUT - Ready for input (authorization for change)
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
OUTPUT - Display authorization (X)
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
AUT_PLANTRM - Edit authorization for time scheduling
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
AUT_ISTTRM - Enter authorization for actual dates
Data type: RCJ_MARKL-MARKOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
CANCEL - Termination in dialog box during query
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NOT_FOUND - Entry not found
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for CJDW_PRPS_GET 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_cancel | TYPE STRING, " | |||
| lv_e_prps | TYPE PRPS, " | |||
| lv_dialogbox | TYPE PRPS, " SPACE | |||
| lv_aut_trmanzg | TYPE RCJ_MARKL-MARK, " | |||
| lv_actcos | TYPE RCJ_MARKL-MARK, " | |||
| lv_actrev | TYPE RCJ_MARKL-MARK, " | |||
| lv_plncos | TYPE RCJ_MARKL-MARK, " | |||
| lv_plnrev | TYPE RCJ_MARKL-MARK, " | |||
| lv_subdiv | TYPE RCWBS-UNTRG, " | |||
| lv_x_document | TYPE RCJ_MARKL-MARK, " | |||
| lv_x_mlstn | TYPE RCJ_MARKL-MARK, " | |||
| lv_x_pstext | TYPE RCJ_MARKL-MARK, " | |||
| lv_new_element | TYPE RCJ_MARKL-MARK, " | |||
| lv_e_posid | TYPE PRPS-POSID, " | |||
| lv_get_flags | TYPE RCJ_MARKL-MARK, " SPACE | |||
| lv_not_found | TYPE RCJ_MARKL, " | |||
| lv_aut_chnge | TYPE RCJ_MARKL-MARK, " | |||
| lv_aut_displ | TYPE RCJ_MARKL-MARK, " | |||
| lv_e_post1 | TYPE PRPS-POST1, " | |||
| lv_e_vsnmr | TYPE VSKOPF-VSNMR, " | |||
| lv_flg_sta_loe | TYPE RCJ_MARKL-MARK, " | |||
| lv_index_down | TYPE SY-TABIX, " | |||
| lv_flg_inact | TYPE RCJ_MARKL-MARK, " | |||
| lv_orgkey_ext | TYPE VSPRPS_CN-ORGKEY, " | |||
| lv_flg_chg_mode | TYPE RCJ_MARKL-MARK, " | |||
| lv_pspnr_down | TYPE PRPS-PSPNR, " | |||
| lv_index | TYPE SY-TABIX, " 0 | |||
| lv_e_pstabd | TYPE PSTABD, " | |||
| lv_e_objnr | TYPE PRPS-OBJNR, " | |||
| lv_e_pspnr | TYPE PRPS-PSPNR, " | |||
| lv_ident | TYPE PRPS, " | |||
| lv_objnr | TYPE PRPS-OBJNR, " SPACE | |||
| lv_index | TYPE SY-TABIX, " | |||
| lv_posid | TYPE PRPS-POSID, " SPACE | |||
| lv_input | TYPE RCJ_MARKL-MARK, " | |||
| lv_posnr | TYPE PRPS-PSPNR, " 0 | |||
| lv_spsnr | TYPE PRPS-SPSNR, " 0 | |||
| lv_output | TYPE RCJ_MARKL-MARK, " | |||
| lv_aut_plantrm | TYPE RCJ_MARKL-MARK, " | |||
| lv_aut_isttrm | TYPE RCJ_MARKL-MARK. " |
|   CALL FUNCTION 'CJDW_PRPS_GET' "NOTRANSL: Lesen PRPS aus Belegtabelle |
| EXPORTING | ||
| DIALOGBOX | = lv_dialogbox | |
| GET_FLAGS | = lv_get_flags | |
| INDEX | = lv_index | |
| OBJNR | = lv_objnr | |
| POSID | = lv_posid | |
| POSNR | = lv_posnr | |
| SPSNR | = lv_spsnr | |
| IMPORTING | ||
| E_PRPS | = lv_e_prps | |
| AUT_TRMANZG | = lv_aut_trmanzg | |
| ACTCOS | = lv_actcos | |
| ACTREV | = lv_actrev | |
| PLNCOS | = lv_plncos | |
| PLNREV | = lv_plnrev | |
| SUBDIV | = lv_subdiv | |
| X_DOCUMENT | = lv_x_document | |
| X_MLSTN | = lv_x_mlstn | |
| X_PSTEXT | = lv_x_pstext | |
| NEW_ELEMENT | = lv_new_element | |
| E_POSID | = lv_e_posid | |
| AUT_CHNGE | = lv_aut_chnge | |
| AUT_DISPL | = lv_aut_displ | |
| E_POST1 | = lv_e_post1 | |
| E_VSNMR | = lv_e_vsnmr | |
| FLG_STA_LOE | = lv_flg_sta_loe | |
| INDEX_DOWN | = lv_index_down | |
| FLG_INACT | = lv_flg_inact | |
| ORGKEY_EXT | = lv_orgkey_ext | |
| FLG_CHG_MODE | = lv_flg_chg_mode | |
| PSPNR_DOWN | = lv_pspnr_down | |
| E_PSTABD | = lv_e_pstabd | |
| E_OBJNR | = lv_e_objnr | |
| E_PSPNR | = lv_e_pspnr | |
| IDENT | = lv_ident | |
| INDEX | = lv_index | |
| INPUT | = lv_input | |
| OUTPUT | = lv_output | |
| AUT_PLANTRM | = lv_aut_plantrm | |
| AUT_ISTTRM | = lv_aut_isttrm | |
| EXCEPTIONS | ||
| CANCEL = 1 | ||
| NOT_FOUND = 2 | ||
| . " CJDW_PRPS_GET | ||
ABAP code using 7.40 inline data declarations to call FM CJDW_PRPS_GET
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_dialogbox) | = ' '. | |||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_aut_trmanzg). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_actcos). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_actrev). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_plncos). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_plnrev). | ||||
| "SELECT single UNTRG FROM RCWBS INTO @DATA(ld_subdiv). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_x_document). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_x_mlstn). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_x_pstext). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_new_element). | ||||
| "SELECT single POSID FROM PRPS INTO @DATA(ld_e_posid). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_get_flags). | ||||
| DATA(ld_get_flags) | = ' '. | |||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_aut_chnge). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_aut_displ). | ||||
| "SELECT single POST1 FROM PRPS INTO @DATA(ld_e_post1). | ||||
| "SELECT single VSNMR FROM VSKOPF INTO @DATA(ld_e_vsnmr). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_flg_sta_loe). | ||||
| "SELECT single TABIX FROM SY INTO @DATA(ld_index_down). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_flg_inact). | ||||
| "SELECT single ORGKEY FROM VSPRPS_CN INTO @DATA(ld_orgkey_ext). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_flg_chg_mode). | ||||
| "SELECT single PSPNR FROM PRPS INTO @DATA(ld_pspnr_down). | ||||
| "SELECT single TABIX FROM SY INTO @DATA(ld_index). | ||||
| "SELECT single OBJNR FROM PRPS INTO @DATA(ld_e_objnr). | ||||
| "SELECT single PSPNR FROM PRPS INTO @DATA(ld_e_pspnr). | ||||
| "SELECT single OBJNR FROM PRPS INTO @DATA(ld_objnr). | ||||
| DATA(ld_objnr) | = ' '. | |||
| "SELECT single TABIX FROM SY INTO @DATA(ld_index). | ||||
| "SELECT single POSID FROM PRPS INTO @DATA(ld_posid). | ||||
| DATA(ld_posid) | = ' '. | |||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_input). | ||||
| "SELECT single PSPNR FROM PRPS INTO @DATA(ld_posnr). | ||||
| "SELECT single SPSNR FROM PRPS INTO @DATA(ld_spsnr). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_output). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_aut_plantrm). | ||||
| "SELECT single MARK FROM RCJ_MARKL INTO @DATA(ld_aut_isttrm). | ||||
Search for further information about these or an SAP related objects