SAP HR_GET_VACANCY_DETAIL Function Module for Reading Data of a Vacant Position
HR_GET_VACANCY_DETAIL is a standard hr get vacancy detail SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Reading Data of a Vacant Position 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 hr get vacancy detail FM, simply by entering the name HR_GET_VACANCY_DETAIL into the relevant SAP transaction such as SE37 or SE38.
Function Group: HRAI
Program Name: SAPLHRAI
Main Program:
Appliation area: P
Release date: 08-Aug-1997
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function HR_GET_VACANCY_DETAIL 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 'HR_GET_VACANCY_DETAIL'"Reading Data of a Vacant Position.
EXPORTING
POSITIONID = "Position
BEGINDATE = "Selection Range: Start
ENDDATE = "Selection Range: End
IMPORTING
POSITIONNAME = "Position Name
REFTELEPHONENUMBER = "Personnel Officer: Telephone Number
HEADPERSONNELID = "Head of Department: Personnel Number
HEADNAME = "Head of Department: Name
HEADFIRSTNAME = "Head of Department: First Name
HEADLASTNAME = "Head of Department: Last Name
HEADBUILDING = "Head of Department: Building
HEADROOM = "Head of Department: Room
HEADTELEPHONENUMBER = "Head of Department: Telephone Number
LINEPERSONNELID = "Superior: Personnel Number
LINENAME = "Superior: Name
ORGUNITID = "Organizational Unit
LINEFIRSTNAME = "Superior: First Name
LINELASTNAME = "Superior: Last Name
LINEBUILDING = "Superior: Building
LINEROOM = "Superior: Room
LINETELEPHONENUMBER = "Superior: Telephone Number
SALARYLOWVALUE = "Payment: Minimum
SALARYHIGHVALUE = "Payment: Minimum
SALARYCURRENCY = "Currency
HOURSDAILY = "Working Time: Daily
HOURSWEEKLY = "Working Time: Weekly
ORGUNITNAME = "Organizational Unit Name
HOURSMONTHLY = "Working Time: Monthly
HOURSYEARLY = "Working Time: Annual
PERSONNELAREA = "Personnel Area
PERSONNNELSUBAREA = "Personnel Subarea
EMPLOYEEGROUP = "Employee Group
EMPLOYEESUBGROUP = "Employee Subgroup
JOBID = "Job
JOBNAME = "Job Titles
EXEMPT = "Indicator: Exempt / Not Exempt
EEOCATEGORIE = "EEO Category
REFPERSONNELID = "Personnel Officer: Personnel Number
AAPCATEGORIE = "AAP Category
REFNAME = "Personnel Officer: Name
REFFIRSTNAME = "Personnel Officer: First Name
REFLASTNAME = "Personnel Officer: Last Name
REFBUILDING = "Personnel Officer: Building
REFROOM = "Personnel Officer: Room
TABLES
* REQUIREMENT = "Requirements Profile
* DESCRIPTION = "
IMPORTING Parameters details for HR_GET_VACANCY_DETAIL
POSITIONID - Position
Data type: T750X-OBJIDOptional: No
Call by Reference: No ( called with pass by value option)
BEGINDATE - Selection Range: Start
Data type: T750X-BEGDAOptional: No
Call by Reference: No ( called with pass by value option)
ENDDATE - Selection Range: End
Data type: T750X-ENDDAOptional: No
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for HR_GET_VACANCY_DETAIL
POSITIONNAME - Position Name
Data type: T528T-PLSTXOptional: No
Call by Reference: No ( called with pass by value option)
REFTELEPHONENUMBER - Personnel Officer: Telephone Number
Data type: P0032-TEL01Optional: No
Call by Reference: No ( called with pass by value option)
HEADPERSONNELID - Head of Department: Personnel Number
Data type: P0001-PERNROptional: No
Call by Reference: No ( called with pass by value option)
HEADNAME - Head of Department: Name
Data type: P0001-ENAMEOptional: No
Call by Reference: No ( called with pass by value option)
HEADFIRSTNAME - Head of Department: First Name
Data type: P0002-VORNAOptional: No
Call by Reference: No ( called with pass by value option)
HEADLASTNAME - Head of Department: Last Name
Data type: P0002-NACHNOptional: No
Call by Reference: No ( called with pass by value option)
HEADBUILDING - Head of Department: Building
Data type: P0032-GEBNROptional: No
Call by Reference: No ( called with pass by value option)
HEADROOM - Head of Department: Room
Data type: P0032-ZIMNROptional: No
Call by Reference: No ( called with pass by value option)
HEADTELEPHONENUMBER - Head of Department: Telephone Number
Data type: P0032-TEL01Optional: No
Call by Reference: No ( called with pass by value option)
LINEPERSONNELID - Superior: Personnel Number
Data type: P0001-PERNROptional: No
Call by Reference: No ( called with pass by value option)
LINENAME - Superior: Name
Data type: P0001-ENAMEOptional: No
Call by Reference: No ( called with pass by value option)
ORGUNITID - Organizational Unit
Data type: P1000-OBJIDOptional: No
Call by Reference: No ( called with pass by value option)
LINEFIRSTNAME - Superior: First Name
Data type: P0002-VORNAOptional: No
Call by Reference: No ( called with pass by value option)
LINELASTNAME - Superior: Last Name
Data type: P0002-NACHNOptional: No
Call by Reference: No ( called with pass by value option)
LINEBUILDING - Superior: Building
Data type: P0032-GEBNROptional: No
Call by Reference: No ( called with pass by value option)
LINEROOM - Superior: Room
Data type: P0032-ZIMNROptional: No
Call by Reference: No ( called with pass by value option)
LINETELEPHONENUMBER - Superior: Telephone Number
Data type: P0032-TEL01Optional: No
Call by Reference: No ( called with pass by value option)
SALARYLOWVALUE - Payment: Minimum
Data type: BAPICURR-BAPICURROptional: No
Call by Reference: No ( called with pass by value option)
SALARYHIGHVALUE - Payment: Minimum
Data type: BAPICURR-BAPICURROptional: No
Call by Reference: No ( called with pass by value option)
SALARYCURRENCY - Currency
Data type: P1005-CURCYOptional: No
Call by Reference: No ( called with pass by value option)
HOURSDAILY - Working Time: Daily
Data type: P1011-DYAVGOptional: No
Call by Reference: No ( called with pass by value option)
HOURSWEEKLY - Working Time: Weekly
Data type: P1011-WKAVGOptional: No
Call by Reference: No ( called with pass by value option)
ORGUNITNAME - Organizational Unit Name
Data type: P1000-STEXTOptional: No
Call by Reference: No ( called with pass by value option)
HOURSMONTHLY - Working Time: Monthly
Data type: P1011-MOAVGOptional: No
Call by Reference: No ( called with pass by value option)
HOURSYEARLY - Working Time: Annual
Data type: P1011-YRAVGOptional: No
Call by Reference: No ( called with pass by value option)
PERSONNELAREA - Personnel Area
Data type: P0001-WERKSOptional: No
Call by Reference: No ( called with pass by value option)
PERSONNNELSUBAREA - Personnel Subarea
Data type: P0001-BTRTLOptional: No
Call by Reference: No ( called with pass by value option)
EMPLOYEEGROUP - Employee Group
Data type: P0001-PERSGOptional: No
Call by Reference: No ( called with pass by value option)
EMPLOYEESUBGROUP - Employee Subgroup
Data type: P0001-PERSKOptional: No
Call by Reference: No ( called with pass by value option)
JOBID - Job
Data type: P1000-OBJIDOptional: No
Call by Reference: No ( called with pass by value option)
JOBNAME - Job Titles
Data type: P1000-STEXTOptional: No
Call by Reference: No ( called with pass by value option)
EXEMPT - Indicator: Exempt / Not Exempt
Data type: T5U13-EXMPTOptional: No
Call by Reference: No ( called with pass by value option)
EEOCATEGORIE - EEO Category
Data type: T5U13-EEOCTOptional: No
Call by Reference: No ( called with pass by value option)
REFPERSONNELID - Personnel Officer: Personnel Number
Data type: P0001-PERNROptional: No
Call by Reference: No ( called with pass by value option)
AAPCATEGORIE - AAP Category
Data type: T5U13-AAPCTOptional: No
Call by Reference: No ( called with pass by value option)
REFNAME - Personnel Officer: Name
Data type: P0001-ENAMEOptional: No
Call by Reference: No ( called with pass by value option)
REFFIRSTNAME - Personnel Officer: First Name
Data type: P0002-VORNAOptional: No
Call by Reference: No ( called with pass by value option)
REFLASTNAME - Personnel Officer: Last Name
Data type: P0002-NACHNOptional: No
Call by Reference: No ( called with pass by value option)
REFBUILDING - Personnel Officer: Building
Data type: P0032-GEBNROptional: No
Call by Reference: No ( called with pass by value option)
REFROOM - Personnel Officer: Room
Data type: P0032-ZIMNROptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for HR_GET_VACANCY_DETAIL
REQUIREMENT - Requirements Profile
Data type: HRREQOptional: Yes
Call by Reference: No ( called with pass by value option)
DESCRIPTION -
Data type: PT1002Optional: Yes
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for HR_GET_VACANCY_DETAIL 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_positionid | TYPE T750X-OBJID, " | |||
| lt_requirement | TYPE STANDARD TABLE OF HRREQ, " | |||
| lv_positionname | TYPE T528T-PLSTX, " | |||
| lv_reftelephonenumber | TYPE P0032-TEL01, " | |||
| lv_headpersonnelid | TYPE P0001-PERNR, " | |||
| lv_headname | TYPE P0001-ENAME, " | |||
| lv_headfirstname | TYPE P0002-VORNA, " | |||
| lv_headlastname | TYPE P0002-NACHN, " | |||
| lv_headbuilding | TYPE P0032-GEBNR, " | |||
| lv_headroom | TYPE P0032-ZIMNR, " | |||
| lv_headtelephonenumber | TYPE P0032-TEL01, " | |||
| lv_linepersonnelid | TYPE P0001-PERNR, " | |||
| lv_linename | TYPE P0001-ENAME, " | |||
| lv_begindate | TYPE T750X-BEGDA, " | |||
| lv_orgunitid | TYPE P1000-OBJID, " | |||
| lt_description | TYPE STANDARD TABLE OF PT1002, " | |||
| lv_linefirstname | TYPE P0002-VORNA, " | |||
| lv_linelastname | TYPE P0002-NACHN, " | |||
| lv_linebuilding | TYPE P0032-GEBNR, " | |||
| lv_lineroom | TYPE P0032-ZIMNR, " | |||
| lv_linetelephonenumber | TYPE P0032-TEL01, " | |||
| lv_salarylowvalue | TYPE BAPICURR-BAPICURR, " | |||
| lv_salaryhighvalue | TYPE BAPICURR-BAPICURR, " | |||
| lv_salarycurrency | TYPE P1005-CURCY, " | |||
| lv_hoursdaily | TYPE P1011-DYAVG, " | |||
| lv_hoursweekly | TYPE P1011-WKAVG, " | |||
| lv_enddate | TYPE T750X-ENDDA, " | |||
| lv_orgunitname | TYPE P1000-STEXT, " | |||
| lv_hoursmonthly | TYPE P1011-MOAVG, " | |||
| lv_hoursyearly | TYPE P1011-YRAVG, " | |||
| lv_personnelarea | TYPE P0001-WERKS, " | |||
| lv_personnnelsubarea | TYPE P0001-BTRTL, " | |||
| lv_employeegroup | TYPE P0001-PERSG, " | |||
| lv_employeesubgroup | TYPE P0001-PERSK, " | |||
| lv_jobid | TYPE P1000-OBJID, " | |||
| lv_jobname | TYPE P1000-STEXT, " | |||
| lv_exempt | TYPE T5U13-EXMPT, " | |||
| lv_eeocategorie | TYPE T5U13-EEOCT, " | |||
| lv_refpersonnelid | TYPE P0001-PERNR, " | |||
| lv_aapcategorie | TYPE T5U13-AAPCT, " | |||
| lv_refname | TYPE P0001-ENAME, " | |||
| lv_reffirstname | TYPE P0002-VORNA, " | |||
| lv_reflastname | TYPE P0002-NACHN, " | |||
| lv_refbuilding | TYPE P0032-GEBNR, " | |||
| lv_refroom | TYPE P0032-ZIMNR. " |
|   CALL FUNCTION 'HR_GET_VACANCY_DETAIL' "Reading Data of a Vacant Position |
| EXPORTING | ||
| POSITIONID | = lv_positionid | |
| BEGINDATE | = lv_begindate | |
| ENDDATE | = lv_enddate | |
| IMPORTING | ||
| POSITIONNAME | = lv_positionname | |
| REFTELEPHONENUMBER | = lv_reftelephonenumber | |
| HEADPERSONNELID | = lv_headpersonnelid | |
| HEADNAME | = lv_headname | |
| HEADFIRSTNAME | = lv_headfirstname | |
| HEADLASTNAME | = lv_headlastname | |
| HEADBUILDING | = lv_headbuilding | |
| HEADROOM | = lv_headroom | |
| HEADTELEPHONENUMBER | = lv_headtelephonenumber | |
| LINEPERSONNELID | = lv_linepersonnelid | |
| LINENAME | = lv_linename | |
| ORGUNITID | = lv_orgunitid | |
| LINEFIRSTNAME | = lv_linefirstname | |
| LINELASTNAME | = lv_linelastname | |
| LINEBUILDING | = lv_linebuilding | |
| LINEROOM | = lv_lineroom | |
| LINETELEPHONENUMBER | = lv_linetelephonenumber | |
| SALARYLOWVALUE | = lv_salarylowvalue | |
| SALARYHIGHVALUE | = lv_salaryhighvalue | |
| SALARYCURRENCY | = lv_salarycurrency | |
| HOURSDAILY | = lv_hoursdaily | |
| HOURSWEEKLY | = lv_hoursweekly | |
| ORGUNITNAME | = lv_orgunitname | |
| HOURSMONTHLY | = lv_hoursmonthly | |
| HOURSYEARLY | = lv_hoursyearly | |
| PERSONNELAREA | = lv_personnelarea | |
| PERSONNNELSUBAREA | = lv_personnnelsubarea | |
| EMPLOYEEGROUP | = lv_employeegroup | |
| EMPLOYEESUBGROUP | = lv_employeesubgroup | |
| JOBID | = lv_jobid | |
| JOBNAME | = lv_jobname | |
| EXEMPT | = lv_exempt | |
| EEOCATEGORIE | = lv_eeocategorie | |
| REFPERSONNELID | = lv_refpersonnelid | |
| AAPCATEGORIE | = lv_aapcategorie | |
| REFNAME | = lv_refname | |
| REFFIRSTNAME | = lv_reffirstname | |
| REFLASTNAME | = lv_reflastname | |
| REFBUILDING | = lv_refbuilding | |
| REFROOM | = lv_refroom | |
| TABLES | ||
| REQUIREMENT | = lt_requirement | |
| DESCRIPTION | = lt_description | |
| . " HR_GET_VACANCY_DETAIL | ||
ABAP code using 7.40 inline data declarations to call FM HR_GET_VACANCY_DETAIL
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 OBJID FROM T750X INTO @DATA(ld_positionid). | ||||
| "SELECT single PLSTX FROM T528T INTO @DATA(ld_positionname). | ||||
| "SELECT single TEL01 FROM P0032 INTO @DATA(ld_reftelephonenumber). | ||||
| "SELECT single PERNR FROM P0001 INTO @DATA(ld_headpersonnelid). | ||||
| "SELECT single ENAME FROM P0001 INTO @DATA(ld_headname). | ||||
| "SELECT single VORNA FROM P0002 INTO @DATA(ld_headfirstname). | ||||
| "SELECT single NACHN FROM P0002 INTO @DATA(ld_headlastname). | ||||
| "SELECT single GEBNR FROM P0032 INTO @DATA(ld_headbuilding). | ||||
| "SELECT single ZIMNR FROM P0032 INTO @DATA(ld_headroom). | ||||
| "SELECT single TEL01 FROM P0032 INTO @DATA(ld_headtelephonenumber). | ||||
| "SELECT single PERNR FROM P0001 INTO @DATA(ld_linepersonnelid). | ||||
| "SELECT single ENAME FROM P0001 INTO @DATA(ld_linename). | ||||
| "SELECT single BEGDA FROM T750X INTO @DATA(ld_begindate). | ||||
| "SELECT single OBJID FROM P1000 INTO @DATA(ld_orgunitid). | ||||
| "SELECT single VORNA FROM P0002 INTO @DATA(ld_linefirstname). | ||||
| "SELECT single NACHN FROM P0002 INTO @DATA(ld_linelastname). | ||||
| "SELECT single GEBNR FROM P0032 INTO @DATA(ld_linebuilding). | ||||
| "SELECT single ZIMNR FROM P0032 INTO @DATA(ld_lineroom). | ||||
| "SELECT single TEL01 FROM P0032 INTO @DATA(ld_linetelephonenumber). | ||||
| "SELECT single BAPICURR FROM BAPICURR INTO @DATA(ld_salarylowvalue). | ||||
| "SELECT single BAPICURR FROM BAPICURR INTO @DATA(ld_salaryhighvalue). | ||||
| "SELECT single CURCY FROM P1005 INTO @DATA(ld_salarycurrency). | ||||
| "SELECT single DYAVG FROM P1011 INTO @DATA(ld_hoursdaily). | ||||
| "SELECT single WKAVG FROM P1011 INTO @DATA(ld_hoursweekly). | ||||
| "SELECT single ENDDA FROM T750X INTO @DATA(ld_enddate). | ||||
| "SELECT single STEXT FROM P1000 INTO @DATA(ld_orgunitname). | ||||
| "SELECT single MOAVG FROM P1011 INTO @DATA(ld_hoursmonthly). | ||||
| "SELECT single YRAVG FROM P1011 INTO @DATA(ld_hoursyearly). | ||||
| "SELECT single WERKS FROM P0001 INTO @DATA(ld_personnelarea). | ||||
| "SELECT single BTRTL FROM P0001 INTO @DATA(ld_personnnelsubarea). | ||||
| "SELECT single PERSG FROM P0001 INTO @DATA(ld_employeegroup). | ||||
| "SELECT single PERSK FROM P0001 INTO @DATA(ld_employeesubgroup). | ||||
| "SELECT single OBJID FROM P1000 INTO @DATA(ld_jobid). | ||||
| "SELECT single STEXT FROM P1000 INTO @DATA(ld_jobname). | ||||
| "SELECT single EXMPT FROM T5U13 INTO @DATA(ld_exempt). | ||||
| "SELECT single EEOCT FROM T5U13 INTO @DATA(ld_eeocategorie). | ||||
| "SELECT single PERNR FROM P0001 INTO @DATA(ld_refpersonnelid). | ||||
| "SELECT single AAPCT FROM T5U13 INTO @DATA(ld_aapcategorie). | ||||
| "SELECT single ENAME FROM P0001 INTO @DATA(ld_refname). | ||||
| "SELECT single VORNA FROM P0002 INTO @DATA(ld_reffirstname). | ||||
| "SELECT single NACHN FROM P0002 INTO @DATA(ld_reflastname). | ||||
| "SELECT single GEBNR FROM P0032 INTO @DATA(ld_refbuilding). | ||||
| "SELECT single ZIMNR FROM P0032 INTO @DATA(ld_refroom). | ||||
Search for further information about these or an SAP related objects