Employee Check in SAP
Hi Experts,
I have a query regarding Employee Validation in SAP System.
Is there any way to give a validation check while hiring an employee. Here we have close to 5000 temporary hourly wage earners and we will not know if that employee is already in the system. Before generating a new employee number, I would like a validity check to show if that employee is already in the system.
If it is not available in standard SAP, please let me know if this can be done through ABAP and some inputs on ABAP.
Thanks in advance!
As per my knowledge there is no standard functionality like this.
But we can do the validations using screen and Field validations
You need to take the fields Date of Birth, First Name, Last Name.
Giving option Save details with a warning message because there is always chance to have persons with same name with same Date of Birth.
Warm Regards
Similar Messages
-
Employee details in SAP ABAP Hr
hi folks,
do any one hav done Report -Employee details in SAP ABAP Hr.check this code
* INFOTYPES *
INFOTYPES : 0000, " Actions
0001, " Organizaiton Assignment
0002, " Personnel Data
0008, " Basic Pay
0022, " Education
0025, " Appraisals
0077, " Additional Personal Data
2001, " Absences
9002, " Additional Personal Data
9545, " Discipline data
0000 NAME INT_PROM,
0000 NAME INT_CHGPY,
0302.
* INCLUDES *
* TABLES *
TABLES : PERNR.
* CONSTANTS *
CONSTANTS : C_ONE TYPE CHAR1 VALUE '1',
C_EARLY TYPE CHAR1 VALUE 'E',
C_NEW TYPE CHAR1 VALUE 'N',
C_EARLYDT TYPE SY-DATUM VALUE '20000501',
C_JAN TYPE CHAR2 VALUE '01',
C_FEB TYPE CHAR2 VALUE '02',
C_MAR TYPE CHAR2 VALUE '03',
C_AWL TYPE CHAR3 VALUE 'AWL',
C_LWP TYPE CHAR3 VALUE 'LWP'.
* TYPES *
TYPE-POOLS: SLIS. " ALV Type Pool
TYPES :
BEGIN OF T_DISCACT,
PERNR TYPE CHAR8,
COMM1 TYPE CHAR1,
DESCRI TYPE CHAR40,
COMM2 TYPE CHAR1,
MDATE TYPE CHAR10,
END OF T_DISCACT,
BEGIN OF T_INCRE,
PERNR TYPE CHAR8,
INCR1 TYPE CHAR10,
INCR2 TYPE CHAR10,
INCR3 TYPE CHAR10,
END OF T_INCRE,
BEGIN OF T_OUTPUT,
PERNR TYPE CHAR8,
NAME TYPE CHAR40,
DESIG TYPE CHAR40,
PESUB TYPE CHAR15,
ORGUN TYPE CHAR40,
COSTC TYPE CHAR20,
ETHIC TYPE CHAR2,
CPCODE TYPE ZCCODE,
GRADE TYPE CHAR8,
*** TYPE CHAR6,
DOB TYPE CHAR10,
DOJ TYPE CHAR10,
QUAL1 TYPE CHAR30,
QUAL2 TYPE CHAR30,
QUAL3 TYPE CHAR30,
QUAL4 TYPE CHAR30,
QUAL5 TYPE CHAR30,
LPROM TYPE CHAR10,
PROMD TYPE CHAR10,
PROMT TYPE CHAR1,
NOYRS TYPE CHAR2,
AWL TYPE CHAR9,
LWP TYPE CHAR9,
APPR1 TYPE CHAR9,
APPR2 TYPE CHAR9,
APPR3 TYPE CHAR9,
APPR4 TYPE CHAR9,
APPR5 TYPE CHAR9,
DISCI TYPE CHAR57,
END OF T_OUTPUT.
DATA : W_OUTPUT TYPE T_OUTPUT.
TYPES : BEGIN OF T_FILE.
INCLUDE STRUCTURE W_OUTPUT.
TYPES : INCR1 TYPE CHAR10,
INCR2 TYPE CHAR10,
INCR3 TYPE CHAR10,
END OF T_FILE.
DATA : W_FILE TYPE T_FILE.
TYPES : BEGIN OF T_EXCEL.
INCLUDE STRUCTURE W_FILE.
TYPES : END OF T_EXCEL.
* INTERNAL TABLES *
DATA : INT_NONEXE TYPE STANDARD TABLE OF ZHRT007 WITH HEADER LINE,
INT_OUTPUT TYPE STANDARD TABLE OF T_OUTPUT WITH HEADER LINE,
INT_DISCACT TYPE STANDARD TABLE OF T_DISCACT WITH HEADER LINE,
INT_QUALFI TYPE STANDARD TABLE OF T518B WITH HEADER LINE,
INT_INCRE TYPE STANDARD TABLE OF T_INCRE WITH HEADER LINE,
INT_DISCIP TYPE STANDARD TABLE OF ZHRT004 WITH HEADER LINE,
INT_PESUB TYPE STANDARD TABLE OF T001P WITH HEADER LINE,
INT_COSTC TYPE STANDARD TABLE OF CSKT WITH HEADER LINE,
INT_EXCEL TYPE STANDARD TABLE OF T_EXCEL WITH HEADER LINE,
EVENT TYPE SLIS_T_EVENT WITH HEADER LINE,
LISTHEAD TYPE SLIS_T_LISTHEADER WITH HEADER LINE.
* VARIABLES *
DATA : W_HIREDATE TYPE BEGDA,
W_WAGEGRP TYPE TRFGR,
W_CPCODE TYPE ZCCODE,
W_CAREERCD TYPE CHAR6,
W_PROMTYPE TYPE ZTSTYPE,
W_NOOFYRS TYPE ZNOYRS,
W_LASTPROM TYPE CHAR10,
W_PROMDATE TYPE BEGDA,
W_YEAR TYPE CHAR4,
W_APYEAR TYPE CHAR4,
W_APPRST TYPE SY-DATUM,
W_DISDATE TYPE ENDDA,
W_APPREND TYPE ENDDA,
W_ABSST TYPE ENDDA,
W_ABSEND TYPE ENDDA,
W_ABSYR TYPE CHAR4,
W_MONTH(2) TYPE N,
W_AWL TYPE CHAR9,
W_LWP TYPE CHAR9,
W_DISCI TYPE T_OUTPUT-DISCI,
W_ONE(2) TYPE N VALUE '01',
W_CURDATE TYPE CHAR10,
W_HEADING TYPE LVC_TITLE.
* SELECTION SCREEN *
SELECTION-SCREEN BEGIN OF BLOCK FRM1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
S_WAGRP FOR P0008-TRFGR OBLIGATORY,
S_FROM FOR P0000-BEGDA OBLIGATORY NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK FRM1.
* Selection screen serach help for wage groups.
INCLUDE : ZHRI0003.
* AT SELECTION SCREEN *
* START OF SELECTION *
START-OF-SELECTION.
PERFORM PU_EXEUTIVES_PROM.
IF S_FROM-HIGH IS INITIAL.
S_FROM-HIGH = SY-DATUM.
ENDIF.
*Fetching employee data for all infotypes.
GET PERNR.
PERFORM PU_DATA_RETRIEVAL.
* START OF SELECTION *
END-OF-SELECTION.
PERFORM PU_FINAL_TABLE.
PERFORM PU_GRID_DISPLAY.
PERFORM PU_FREE_TABLES.
* SUBROUTINES *
*& Form PU_DATA_RETRIEVAL
FORM PU_DATA_RETRIEVAL .
* To find out date of join for employee
PERFORM PU_DATA_OF_JOIN.
* Employee Personnel data
RP_PROVIDE_FROM_LAST P0002 SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND NE C_ONE.
REJECT.
ENDIF.
* Employee Name into output table
INT_OUTPUT-NAME = P0002-VORNA.
* INT_OUTPUT-DOB = P0002-GBDAT.
PERFORM PU_DATE_CONVERSION USING P0002-GBDAT
CHANGING INT_OUTPUT-DOB.
IF P0002-GESCH EQ 1.
INT_OUTPUT-*** = 'Male'.
ELSE.
INT_OUTPUT-*** = 'Female'.
ENDIF.
* Fetching employees from employee sub goup of Non Executive
RP_PROVIDE_FROM_LAST P0001 SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND NE C_ONE.
REJECT.
ENDIF.
IF P0001-PERSK EQ '30' OR P0001-PERSK EQ '20'.
* Position for employee into output table
PERFORM PU_POSTION_TEXT.
ELSE.
REJECT.
ENDIF.
* Position for employee into output table
PERFORM PU_POSTION_TEXT.
* Persoonel Sub Area text .
READ TABLE INT_PESUB WITH KEY WERKS = P0001-WERKS
BTRTL = P0001-BTRTL.
IF SY-SUBRC EQ 0.
INT_OUTPUT-PESUB = INT_PESUB-BTEXT.
ENDIF.
READ TABLE INT_COSTC WITH KEY KOSTL = P0001-KOSTL.
IF SY-SUBRC EQ 0.
INT_OUTPUT-COSTC = INT_COSTC-KTEXT.
ENDIF.
* Fetching employees from Additional Personal Data
RP_PROVIDE_FROM_LAST P0077 SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND EQ C_ONE.
* Ethnic origin of employee into output table
INT_OUTPUT-ETHIC = P0077-RACKY.
ENDIF.
* Selecting data from basic pay last record with wage group
RP_PROVIDE_FROM_LAST P0008 SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND NE C_ONE.
REJECT.
ELSE.
W_WAGEGRP = P0008-TRFGR.
* Employee Pay Scale Group into output table
INT_OUTPUT-GRADE = P0008-TRFGR.
ENDIF.
* Selecting data from Education with wage group
SORT P0022 BY BEGDA.
PROVIDE * FROM P0022 BETWEEN PN-BEGDA AND PN-ENDDA.
IF SY-TABIX EQ 1.
READ TABLE INT_QUALFI WITH KEY AUSBI = P0022-AUSBI.
IF SY-SUBRC EQ 0.
INT_OUTPUT-QUAL1 = INT_QUALFI-ATEXT.
ENDIF.
ELSEIF SY-TABIX EQ 2.
READ TABLE INT_QUALFI WITH KEY AUSBI = P0022-AUSBI.
IF SY-SUBRC EQ 0.
INT_OUTPUT-QUAL2 = INT_QUALFI-ATEXT.
ENDIF.
ELSEIF SY-TABIX EQ 3.
READ TABLE INT_QUALFI WITH KEY AUSBI = P0022-AUSBI.
IF SY-SUBRC EQ 0.
INT_OUTPUT-QUAL3 = INT_QUALFI-ATEXT.
ENDIF.
ELSEIF SY-TABIX EQ 4.
READ TABLE INT_QUALFI WITH KEY AUSBI = P0022-AUSBI.
IF SY-SUBRC EQ 0.
INT_OUTPUT-QUAL4 = INT_QUALFI-ATEXT.
ENDIF.
ELSEIF SY-TABIX EQ 5.
READ TABLE INT_QUALFI WITH KEY AUSBI = P0022-AUSBI.
IF SY-SUBRC EQ 0.
INT_OUTPUT-QUAL5 = INT_QUALFI-ATEXT.
ENDIF.
ENDIF.
ENDPROVIDE.
* Carrer path code for employee from Additional Personal Data.
RP_PROVIDE_FROM_LAST P9002 SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND EQ C_ONE.
W_CPCODE = P9002-CPCODE.
INT_OUTPUT-CPCODE = P9002-CPCODE.
IF W_CPCODE EQ '001'.
IF W_HIREDATE < C_EARLYDT.
CONCATENATE W_CPCODE
C_EARLY
INTO W_CAREERCD.
ELSE.
CONCATENATE W_CPCODE
C_NEW
INTO W_CAREERCD.
ENDIF.
ELSE.
W_CAREERCD = W_CPCODE.
ENDIF.
ENDIF.
* Detrmine Promotion by Test/Service
READ TABLE INT_NONEXE WITH KEY CPCODE = W_CAREERCD
WAGEGROUP = W_WAGEGRP.
IF SY-SUBRC EQ 0.
W_PROMTYPE = INT_NONEXE-TSTYPE.
W_NOOFYRS = INT_NONEXE-NOYRS.
INT_OUTPUT-PROMT = W_PROMTYPE.
INT_OUTPUT-NOYRS = W_NOOFYRS.
ENDIF.
* Retriving last promotion date from actions
DELETE INT_PROM WHERE MASSN NE 'B3'.
SORT INT_PROM BY BEGDA DESCENDING.
* RP_PROVIDE_FROM_LAST INT_PROM SPACE PN-BEGDA PN-ENDDA.
READ TABLE INT_PROM INDEX 1.
IF SY-SUBRC EQ 0 AND INT_PROM-MASSN EQ 'B3'.
PERFORM PU_DATE_CONVERSION USING INT_PROM-BEGDA
CHANGING W_LASTPROM.
ELSE.
PERFORM PU_DATE_CONVERSION USING W_HIREDATE
CHANGING W_LASTPROM.
ENDIF.
* As there is no ending date for records which happen on same date
* for cross check to get last promotion Infotype 0302' is retived
IF P0302[] IS NOT INITIAL.
DELETE P0302 WHERE MASSN NE 'B3'.
SORT P0302 BY BEGDA DESCENDING.
READ TABLE P0302 INDEX 1.
IF SY-SUBRC EQ 0 AND
INT_PROM-BEGDA IS NOT INITIAL.
IF INT_PROM-BEGDA < P0302-BEGDA.
PERFORM PU_DATE_CONVERSION USING P0302-BEGDA
CHANGING W_LASTPROM.
ENDIF.
ENDIF.
ENDIF.
IF W_LASTPROM+0(2) GT '01'.
W_LASTPROM+0(2) = '01'.
W_ONE = W_LASTPROM+3(2) + 1.
W_LASTPROM+3(2) = W_ONE.
ENDIF.
* Last promaotion date for Employee into output table
INT_OUTPUT-LPROM = W_LASTPROM.
* To Find out promotion due date for employee.
* Fetching service availabilty data
W_YEAR = W_LASTPROM+6(4).
W_YEAR = W_YEAR + W_NOOFYRS.
CONCATENATE W_YEAR
W_LASTPROM+3(2)
W_LASTPROM+0(2)
INTO W_PROMDATE.
* Check promotion duedate is with in input range.
IF S_FROM-LOW IS NOT INITIAL.
CHECK W_PROMDATE GE S_FROM-LOW.
ENDIF.
IF S_FROM-HIGH IS NOT INITIAL.
CHECK W_PROMDATE LE S_FROM-HIGH.
ENDIF.
* Promaotion due date for Employee into output table
PERFORM PU_DATE_CONVERSION USING W_PROMDATE
CHANGING INT_OUTPUT-PROMD.
* Apprisal rating data.
* If promotion month is JAN,FEB,MAR deduct 6 years
IF W_PROMDATE+4(2) EQ C_JAN OR
W_PROMDATE+4(2) EQ C_FEB OR
W_PROMDATE+4(2) EQ C_MAR.
CLEAR W_YEAR.
W_YEAR = W_PROMDATE+0(4).
W_APYEAR = W_YEAR - 1.
W_YEAR = W_YEAR - 6.
ELSE.
* If promotion month is not JAN,FEB,MAR deduct 5 years
W_YEAR = W_PROMDATE+0(4).
W_APYEAR = W_YEAR.
W_YEAR = W_YEAR - 5.
ENDIF.
CONCATENATE W_YEAR
'0401'
INTO W_APPRST.
CONCATENATE W_APYEAR
'0331'
INTO W_APPREND.
DELETE P0025 WHERE BEGDA LT W_APPRST
OR BEGDA GT W_APPREND.
PROVIDE * FROM P0025 BETWEEN PN-BEGDA AND PN-ENDDA.
IF SY-TABIX EQ 1.
INT_OUTPUT-APPR1 = P0025-KSU01.
ELSEIF SY-TABIX EQ 2.
INT_OUTPUT-APPR2 = P0025-KSU01.
ELSEIF SY-TABIX EQ 3.
INT_OUTPUT-APPR3 = P0025-KSU01.
ELSEIF SY-TABIX EQ 4.
INT_OUTPUT-APPR4 = P0025-KSU01.
ELSEIF SY-TABIX EQ 5.
INT_OUTPUT-APPR5 = P0025-KSU01.
ENDIF.
ENDPROVIDE.
* Absence data.
IF W_PROMDATE+4(2) EQ C_JAN.
CLEAR W_YEAR.
W_YEAR = W_PROMDATE+0(4).
W_ABSYR = W_YEAR - 1.
W_MONTH = '11'.
W_YEAR = W_YEAR - 2.
ELSE.
* If promotion month is not JAN,FEB,MAR deduct 5 years
W_YEAR = W_PROMDATE+0(4).
W_ABSYR = W_YEAR.
W_MONTH = W_PROMDATE+4(2).
W_MONTH = W_MONTH - 01.
W_YEAR = W_YEAR - 1.
ENDIF.
CONCATENATE W_YEAR
W_MONTH
'23'
INTO W_ABSST.
CONCATENATE W_ABSYR
W_MONTH
'22'
INTO W_ABSEND.
SORT P2001 BY BEGDA.
DELETE P2001 WHERE ( AWART NE C_AWL AND
AWART NE C_LWP ) OR
( BEGDA LT W_ABSST
OR BEGDA GT W_ABSEND ).
PROVIDE * FROM P2001 BETWEEN PN-BEGDA AND PN-ENDDA.
IF P2001-AWART EQ C_AWL.
W_AWL = W_AWL + P2001-ABWTG.
ELSEIF P2001-AWART EQ C_LWP.
W_LWP = W_LWP + P2001-ABWTG.
ENDIF.
ENDPROVIDE.
INT_OUTPUT-AWL = W_AWL.
INT_OUTPUT-LWP = W_LWP.
* Increments dates' data.
DELETE INT_CHGPY WHERE MASSN NE 'B7'.
SORT INT_CHGPY BY BEGDA DESCENDING.
IF INT_CHGPY[] IS NOT INITIAL.
INT_INCRE-PERNR = INT_CHGPY-PERNR.
PROVIDE * FROM INT_CHGPY BETWEEN PN-BEGDA
AND PN-ENDDA.
IF SY-TABIX EQ 1.
PERFORM PU_DATE_CONVERSION USING INT_CHGPY-BEGDA
CHANGING INT_INCRE-INCR1.
ELSEIF SY-TABIX EQ 2.
PERFORM PU_DATE_CONVERSION USING INT_CHGPY-BEGDA
CHANGING INT_INCRE-INCR2.
ELSEIF SY-TABIX EQ 3.
PERFORM PU_DATE_CONVERSION USING INT_CHGPY-BEGDA
CHANGING INT_INCRE-INCR3.
ENDIF.
ENDPROVIDE.
APPEND INT_INCRE.
CLEAR INT_INCRE.
ENDIF.
* Disciplinary Actions.
CLEAR W_YEAR.
W_YEAR = W_PROMDATE+0(4).
W_YEAR = W_YEAR - 3.
CONCATENATE W_YEAR
W_PROMDATE+4(4)
INTO W_DISDATE.
SORT P9545 BY MDATE.
DELETE P9545 WHERE MDATE LT W_DISDATE
OR MDATE GT W_PROMDATE.
PROVIDE * FROM P9545 BETWEEN PN-BEGDA
AND PN-ENDDA.
READ TABLE INT_DISCIP WITH KEY MCODE = P9545-MCODE.
IF SY-SUBRC EQ 0.
INT_DISCACT-PERNR = P9545-PERNR.
INT_DISCACT-DESCRI = INT_DISCIP-DESCRI.
PERFORM PU_DATE_CONVERSION USING P9545-MDATE
CHANGING INT_DISCACT-MDATE.
INT_DISCACT-COMM1 = ','.
INT_DISCACT-COMM2 = ','.
APPEND INT_DISCACT.
CLEAR INT_DISCACT.
ENDIF.
ENDPROVIDE.
APPEND INT_OUTPUT.
CLEAR INT_OUTPUT.
CLEAR : W_HIREDATE,W_WAGEGRP,W_CPCODE,W_CAREERCD,W_PROMTYPE,
W_NOOFYRS,W_LASTPROM,W_PROMDATE,W_YEAR,W_APYEAR,
W_APPRST,W_DISDATE,W_APPREND,W_ABSST,W_ABSEND,
W_ABSYR,W_MONTH,W_AWL,W_LWP,W_DISCI.
ENDFORM. " PU_DATA_RETRIEVAL
*& Form PU_DATA_OF_JOIN
FORM PU_DATA_OF_JOIN .
CLEAR INT_OUTPUT.
READ TABLE P0000 WITH KEY MASSN = 'B1'.
IF SY-SUBRC NE 0 OR P0000-STAT2 NE '3'.
REJECT.
ELSE.
* Personnel number into output table
INT_OUTPUT-PERNR = P0000-PERNR.
PERFORM PU_DATE_CONVERSION USING P0000-BEGDA
CHANGING INT_OUTPUT-DOJ.
W_HIREDATE = P0000-BEGDA.
ENDIF.
ENDFORM. " PU_DATA_OF_JOIN
*& Form PU_POSTION_TEXT
FORM PU_POSTION_TEXT .
DATA : S_OBJECT TYPE OBJEC_T,
PERNR_TAB TYPE HRQUERY_PERNR_T ,
SOBID_TAB TYPE HRQUERY_SOBID_T ,
WA_SOBID TYPE HRQUERY_SOBID,
WA_PERNR TYPE HRQUERY_PERNR,
WA_OBJECT TYPE OBJEC.
WA_PERNR-PERNR = P0001-PERNR.
APPEND WA_PERNR TO PERNR_TAB.
WA_SOBID-PLVAR = '01'.
WA_SOBID-OTYPE = P0001-OTYPE.
WA_SOBID-SOBID = P0001-PLANS.
APPEND WA_SOBID TO SOBID_TAB.
WA_SOBID-PLVAR = '01'.
WA_SOBID-OTYPE = 'O'.
WA_SOBID-SOBID = P0001-ORGEH.
APPEND WA_SOBID TO SOBID_TAB.
CALL FUNCTION 'HR_GET_TEXT_FOR_OBJECTS'
EXPORTING
BEGDA = PN-BEGDA
ENDDA = PN-ENDDA
IMPORTING
OBJEC_TAB = S_OBJECT
CHANGING
PERNR_TAB = PERNR_TAB
SOBID_TAB = SOBID_TAB
EXCEPTIONS
WRONG_DATES = 1
OTHERS = 2.
IF SY-SUBRC EQ 0.
LOOP AT S_OBJECT INTO WA_OBJECT.
IF WA_OBJECT-OTYPE EQ 'O'.
INT_OUTPUT-ORGUN = WA_OBJECT-STEXT.
ELSEIF WA_OBJECT-OTYPE EQ 'S'.
INT_OUTPUT-DESIG = WA_OBJECT-STEXT.
ENDIF.
ENDLOOP.
ENDIF.
ENDFORM. " PU_POSTION_TEXT
*& Form PU_EXEUTIVES_PROM
FORM PU_EXEUTIVES_PROM .
SELECT * FROM ZHRT007 INTO TABLE INT_NONEXE.
SELECT * FROM ZHRT004 INTO TABLE INT_DISCIP.
SELECT * FROM T001P INTO TABLE INT_PESUB.
SELECT * FROM CSKT INTO TABLE INT_COSTC
WHERE SPRAS EQ SY-LANGU.
SELECT * FROM T518B INTO TABLE INT_QUALFI
WHERE LANGU EQ SY-LANGU.
ENDFORM. " PU_EXEUTIVES_PROM
*& Form PU_DATE_CONVERSION
FORM PU_DATE_CONVERSION USING INPUT_DATE TYPE SY-DATUM
CHANGING OUTPUT_DATE TYPE CHAR10.
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
DATE_INTERNAL = INPUT_DATE
IMPORTING
DATE_EXTERNAL = OUTPUT_DATE
EXCEPTIONS
DATE_INTERNAL_IS_INVALID = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " PU_DATE_CONVERSION
*& Form PU_FINAL_TABLE
* Preparing final internal table for output to excel
FORM PU_FINAL_TABLE .
DATA : W_STR1(4) TYPE N,
W_STR2(4) TYPE N,
W_STR3(4) TYPE N,
W_EXSTR(4) TYPE N,
W_ORSTR(4) TYPE N,
W_INSTR(4) TYPE N,
W_ONSTR(4) TYPE N,
W_DISFLAG TYPE CHAR1,
W_INCFLAG TYPE CHAR1.
LOOP AT INT_OUTPUT.
MOVE-CORRESPONDING INT_OUTPUT TO INT_EXCEL.
LOOP AT INT_DISCACT WHERE PERNR = INT_OUTPUT-PERNR.
IF SY-TABIX EQ 1.
CONCATENATE INT_DISCACT-DESCRI
SPACE
INT_DISCACT-MDATE
INTO W_DISCI.
INT_EXCEL-DISCI = W_DISCI.
ELSE.
W_DISFLAG = 1.
ENDIF.
ENDLOOP.
LOOP AT INT_INCRE WHERE PERNR = INT_OUTPUT-PERNR.
INT_EXCEL-INCR1 = INT_INCRE-INCR1.
INT_EXCEL-INCR2 = INT_INCRE-INCR2.
INT_EXCEL-INCR3 = INT_INCRE-INCR3.
ENDLOOP.
APPEND INT_EXCEL.
CLEAR INT_EXCEL.
CLEAR : W_STR1,W_STR2,W_STR3.
IF W_DISFLAG EQ 1.
W_ORSTR = W_EXSTR.
LOOP AT INT_DISCACT WHERE PERNR = INT_OUTPUT-PERNR.
IF SY-TABIX NE 1.
CONCATENATE INT_DISCACT-DESCRI
SPACE
INT_DISCACT-MDATE
INTO W_DISCI.
INT_EXCEL-DISCI = W_DISCI.
APPEND INT_EXCEL.
CLEAR INT_EXCEL.
CLEAR : W_STR2,W_EXSTR.
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDFORM. " PU_FINAL_TABLE
*& Form PU_GRID_DISPLAY
* text
* --> p1 text
* <-- p2 text
FORM PU_GRID_DISPLAY .
DATA W_GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
PERFORM F_FIELDCAT_INIT USING 'IT_HEADER' W_GT_FIELDCAT[].
IF INT_EXCEL[] IS NOT INITIAL.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-CPROG
IT_FIELDCAT = W_GT_FIELDCAT[]
IT_EVENTS = EVENT[]
TABLES
T_OUTTAB = INT_EXCEL
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ELSE.
MESSAGE S011(ZHR).
LEAVE LIST-PROCESSING.
ENDIF.
ENDFORM. " PU_GRID_DISPLAY
*& Form F_FIELDCAT_INIT
FORM F_FIELDCAT_INIT USING IT_TABLE
LT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PERNR'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 14.
LS_FIELDCAT-SELTEXT_L = 'Personnel Number'.
LS_FIELDCAT-FIX_COLUMN = 'X'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'NAME'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 30.
LS_FIELDCAT-SELTEXT_L = 'Name'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'DESIG'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 25.
LS_FIELDCAT-SELTEXT_L = 'Desigination'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PESUB'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 16.
LS_FIELDCAT-SELTEXT_L = 'Personnel Sub Area'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'ORGUN'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 25.
LS_FIELDCAT-SELTEXT_L = 'Organization Unit'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'COSTC'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 14.
LS_FIELDCAT-SELTEXT_L = 'Cost Center'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'ETHIC'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 6.
LS_FIELDCAT-SELTEXT_L = 'Ethic'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'CPCODE'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 7.
LS_FIELDCAT-SELTEXT_L = 'CPCode'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'GRADE'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 12.
LS_FIELDCAT-SELTEXT_L = 'Current Grade'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = '***'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 6.
LS_FIELDCAT-SELTEXT_L = 'Gender'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'DOB'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 11.
LS_FIELDCAT-SELTEXT_L = 'Date of Birth'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'DOJ'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 11.
LS_FIELDCAT-SELTEXT_L = 'Date of Join'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'QUAL1'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 13.
LS_FIELDCAT-SELTEXT_L = 'Qualification 1'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'QUAL2'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 13.
LS_FIELDCAT-SELTEXT_L = 'Qualification 2'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'QUAL3'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 13.
LS_FIELDCAT-SELTEXT_L = 'Qualification 3'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'QUAL4'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 13.
LS_FIELDCAT-SELTEXT_L = 'Qualification 4'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'QUAL5'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 13.
LS_FIELDCAT-SELTEXT_L = 'Qualification 5'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'LPROM'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 16.
LS_FIELDCAT-SELTEXT_L = 'Last Promotion Date'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PROMD'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 16.
LS_FIELDCAT-SELTEXT_L = 'Promotion Due Date'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PROMT'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 14.
LS_FIELDCAT-SELTEXT_L = 'Promotion Type'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'NOYRS'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Number of Years'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'AWL'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 22.
LS_FIELDCAT-SELTEXT_L = 'Absence Without Leave'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'LWP'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 22.
LS_FIELDCAT-SELTEXT_L = 'Leave Without Pay'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'APPR1'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Apprisal 1st'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'APPR2'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Apprisal 2nd'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'APPR3'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Apprisal 3rd'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'APPR4'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Apprisal 4th'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'APPR5'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = 'Apprisal 5th'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'DISCI'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 60.
LS_FIELDCAT-SELTEXT_L = 'Disciplinary Actions - Date'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'INCR1'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = '1st Increment'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'INCR2'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = '2nd Increment'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'INCR3'.
LS_FIELDCAT-TABNAME = INT_EXCEL.
LS_FIELDCAT-OUTPUTLEN = 15.
LS_FIELDCAT-SELTEXT_L = '3rd Increment'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
ENDFORM. " F_FIELDCAT_INIT
*& Form PU_FREE_TABLES
FORM PU_FREE_TABLES .
FREE : INT_NONEXE ,
INT_OUTPUT ,
INT_DISCACT ,
INT_QUALFI ,
INT_INCRE ,
INT_DISCIP ,
INT_PESUB ,
INT_COSTC ,
INT_EXCEL ,
EVENT ,
LISTHEAD .
ENDFORM. " PU_FREE_TABLES
reward points if helpful
Edited by: mohammed abdul hai on Jul 25, 2008 7:21 PM -
Need Employee check-in Software (Secretary's should update it)
Need an Employee check-in Software please. We recently ditched all our old Windows XP machines and bought all Mac Minis.
We used to use MSN Messenger and employees could let everyone knows they are Online, away, sick, vacation etc.
It was easy to use.
Is there a program like that for Mac? ESPECIALLY it would be nice if Secretaries could set statuses for employees who
are out of the office/sick etc and cannot set the status for themselves.
Thank you so much!
Mr CoolC F McBlob wrote:
Messenger is part of Office Mac.
Actually Messenger is effectively discontinued and Skype and Lync are its replacements.
There is VirtualTimeClock (Mac and Windows) but that may not be exactly what the original poster was looking for, see http://www.redcort.com/timeclock/
There is In/Out Board again Mac and Windows but looks like it is not being updated, see http://www.glassbead.com/inoutboard/
There are some which are provided as a SAAS i.e. it is a hosted service you access via a web-browser, I remember seing one a couple of months ago that looked good but I am struggling to find it now.
This might have been the one I was thinking of http://www.teamdf.com/products/tabzon/ looks good and is apparently totally free! -
Dear Forum,
What is the standard procedure in SAP to deal with Post dated checks in SAP. What necessary configuration is required? Out of hundred PDCs received from customer daily 20 gets bounced. How this can be catered in SAP . Please guide.Hi Zoaib,
The basic configurations required would be creation of special gl indicator and new payment method.
Also you can check the status of the same in the below menu
Accounting > Financial Accounting > Accounts Receivable > Information System > Account > Bill of Exchange List
or the bounced cheques you can either post another entry to debit a/r open item and credit the bounced cheque or you can reverse all the documents.
For details please refer to the below link :
http://help.sap.com/saphelp_470/helpdata/en/7e/824f391a780275e10000000a114084/content.htm -
How to do performance check in SAP-BI
please help me in giving information inorder to check the performance check
Hi,
There are number of things that you need to check:
1) Check whether SAP note 830576 is implemented for database tuning or not.
2) Check status of Buffer and heap memory in ST02
3) Check response time in ST03n.
4) Check how much background work processes are allocated.
Thanks
Sunny -
What is unicode check in sap?
what is unicode check in sap?
Hi
http://help.sap.com/saphelp_nw2004s/helpdata/en/79/c55458b3dc11d5993800508b6b8b11/content.htm
Check for the following errors
object must be a character type data object
In Unicode, the addition IN BYTE/CHARACTER MODE must be specified
The access and storage modes ACCESS and MODE must be specified
var1 and var2 are not mutually convertible. In Unicode programs must have the same type/structure
TRANSLATE CODE PAGE/NUMBER FORMAT not allowed
The data type/structure objetcs in 'ADD' statement should have same type
The data type/structure "&1" and "&2" are should have same type
IN TEXT MODE the addition ENCODING must be specified
Structures "&1" and "&2" are not mutually convertible.
The ENCODING addition is not valid in BINARY mode
The IGNORING CONVERSION ERRORS addition is not valid in BINARY mode
The REPLACEMENT CHARACTER addition is not valid in BINARY mode
Check for the Customer code pages and use the tcodes SCOV and SPUMG .
Please Go through these Documents,
Very good document:
http://www.doag.org/pub/docs/sig/sap/2004-03/Buhlinger_Maxi_Version.pdf
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d37d1ad9-0b01-0010-ed9f-bc3222312dd8
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/589d18d9-0b01-0010-ac8a-8a22852061a2
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f8e316d9-0b01-0010-8e95-829a58c1511a -
Downloading Employees photos from SAP: ECC6
Hi Experts,
There are lot of photos for employees in system. Now client is asking to download the photos.
How to download those photos.
OAAD is uploading the photograph similarly is there any Tcode or table where we can download the photos directly
Thanks in advance. . .
rgdsHai,
Try the below link, might help.....
http://sap.ittoolbox.com/groups/technical-functional/sap-hr/download-the-employee-photo-from-sap-46c-version-1551699?cv=expanded
Regards,
Yoganand.V -
Going live check for SAP upgrade projects
Hello,
I am interested in "going live check" service and procedures for my upgrade projects. May I find any documentation? Do I have to pay for it?..
Thanking you in advance and a happy new years!
Kind regards
Nilüfer ÇalışkanHi Nilufer,
The following Input as follows :
Source : http://www.thespot4sap.com/upgrade_guide_v2.pdf
This service is included as part of your annual maintenance fee.
The underlying concept of the SAP GoingLive Functional Upgrade Check is
to ensure smooth operation of your mySAP.com solution by taking action
proactively, before severe technical problems occur.
The GoingLive Functional Upgrade Check is made up of three sessions
(Planning, Analysis and Verification)two sessions (Planning and Analysis)
before the upgrade and the other (Verification) after the upgrade.
Planning Session: This session should be performed as much in advance as
possible when the upgrade is first being considered.
Analyses compatibility for the target release with regards to connected
systems in the Solution Landscape, OS version, DB version, installed Add-
Ons, Plug-ins, Country Versions, and so on.
Analysis Session: It is generally performed two months before the
production upgrade (consider lead time for hardware procurement).
The focus is on resource planning and system configuration.
There is a high-level hardware plausibility check (this is not a hardware
sizing exercise).
Potential resource bottlenecks are identified.
Necessary changes will be recommended to prepare the system for the
productive use of the new release.
38 SAP Upgrade Guide | Simplifying Your Upgrade
Verification Session: Generally performed four to six weeks after the
production upgrade, and the recommendation from the analysis session
implemented.
Comparison of performance with results prior to upgrade
Recommendations on configuration and optimization
More information and ordering . For more information, see the GoingLive
Functional Upgrade Check web page at:
<b>http://service.sap.com/goinglive-fu</b>
To order a GoingLive Functional Upgrade Check, contact SAP Customer Care
Center at least eight weeks prior to the planned upgrade of your production
system.
For customers of value-added resellers (VARs) such as CBS customers in the
US, special conditions apply. Contact your VAR.
Remote Upgrade Service
Remote Upgrade Service is a technical upgrade that is performed by SAP
remote consultants. Pricing is based on the complexity of the customers
environment.
SAP performs the technical upgrade of your system, allowing you to focus on
the functional and training side of the upgrade. You are still responsible for
resolving object conflicts.
See SAP Notes 106447 and 84044.
The Remote Upgrade Service is an attractive option for CBS sized customers
with small or non-existent mySAP Technology group.
For more information see the Remote Upgrade Service web page at:
http://service.sap.com/remoteupgrade
Resources
The following list shows some of the resources you can use as you prepare for
your upgrade of SAP. These resources include:
Your installation partner
Customers and others you have networked with at customer functions and
conferences such as:
ASUG
Hope this Info helps you.
<i>Advanced New Year wishes.</i>
Br,
Sri
Award points for helpful answers -
Not able to view/check the SAP tables in BI server
Hi All,
Actually i was trying to view/check some SAP tables in my BI server through SE11. For example CSKS, MARA.....etc.
But i am unable to view any tables in my BI server. I have cross checked many other tables also. The same tables i can check in my ECC server. but in my BI server system shows the message " CSKS does not exit. Check name".....so please advise whether it is some authorization problem or some thing else?.....Hi,
BI/BW = OLAP System for Ready only Data
ECC = OLTP System for Business Transactions Purpose , Read/Write/Delete/Update/Change Data.
So you can't find ECC Business Related tables in BW. So please check in ECC.
If we have MARA,VBAK,VBAP etc tables in BW, why we need BW Server seperatly, we can analyse the data directly without loading to Cube/DSO.
Thanks
Reddy -
Need help with Signature on Checks using SAP SCRIPT
Hi,
I am looking for some help on how to get the Printer Resident Singature on to the Check using SAP Script. We have a HP Laser 8150 Priter in which the Chip Contains the Signature ( Printer Resident Singaure ) and currentlly the ORACLE application is able to print this signature on the checks. Right now we are in Migration to SAP and we are trying to get this Signature to print on the Check using SAP Script.
Please help us.There are many ways to do this, the simplest way to print the signature is using HEX ENDHEX command.
1. Print the Printer font list from the printer configuration menu, Find the signature in the font list, next to it there'll be esacape sequence in ASCII and Hex format.
2. Add the following command in the window of the signature:
/: HEX TYPE PCL
/= Enter the Hex escape sequence(begins with 1B) from first step
/: ENDHEX
Regards
Sridhar -
IDoc status 53 in employee replication from SAP HR
Hi experts,
We are having some problems in CRM BP creation with role employee.
We are using CRM 5.0 and SAP ECC 6.0 and we are trying to replicate employees information to CRM from HR.
After read the notes 934372, 615896, 550055, 363187, 312090 we made the next configuration steps in our systems:
R/3:
- Creation of connection port (trans. WE21)
- Creation of logical system (trans. WE20) and assignment of outbound message HRMD_ABA
- Creation of distribution model (trans. BD64) with all filters indicated in note 312090
CRM
- Creation of logical system (trans. WE20) and assignment of inbound message HRMD_ABA
- Creation of conversion between basic types HRMD_A05 and HRMD_ABA01 (trans. WE70) as described in note 312090
- Creation of conversion between message types HRMD_A and HRMD_ABA (trans. WE73) as described in note 312090
- Creation of external number range ZE from HR01200001 to HR01299999 (using PA04 in R3 we found the number range between 01200001 and 01299999)
- Creation of BP Grouping with the same name of number range (ZE) checked to be external too
- Update of table T77S0 (using SM30):
HRALX HRAC X
HRALX PBPON OFF
HRALX PBPHR ON
HRALX PBPON ON
HRALX PNUMB 3
HRALX PPROL BUP003
HRALX PSUBG ZE
PLOGI PLOGI MV
We know we should have the same value in R3 and CRM for PLOGI/PLOGI, so we created in CRM MV because that is the plan version used in R3. To create it, we just manually add a new row in table T778P and then selected it in table T77S0. Is this the correct way to create a plan version?
After these steps, in R3 we execute program RHALEINI with parameters:
- Plan version = MV
- Object type = P
- Object ID = an active employee
- Reporting period = all
- Transfer mode = Insert
- Receiving system:
Receiving partner No = DCRCLNT300 (logical system created in WE20)
Message type = HRMD_ABA
And everything looks fine in R3.
In CRM, using trans. WE05, we can see that the iDoc is created, apparently without problems with status 53 - "Applicaton document posted" but the business partner is never created.
Did we miss some configuration steps?
Should we do something more after see the iDoc in CRM to create BP?
Thanks in advance.
Aldahi pratk bhai,
ya i have done the same setting what Ada has mentioned eariler,
and as of your suggestion to maintatin the mandatory infotype, i have even done tht,
after running RHALEINI in R3, the status is all green here.
when i run the tcode BD87 to check the Idoc status its showing fine (Error free).
now, through tcode se38 the report CRMHRALE_CENTRAL_PERSON shows all the employees as status green,,
but the partner number is not getting generated. ( i have used HRALX-PNUMB= 3 (Prefeexing the number range coming from R3)).
kindly advice me what should be done in order to generate a BP number for the replicated HR Employee.
best regards,
Madhup -
Upload Massive Employee Photo into SAP - Archive link - SAP ECC 6.0
Dear all,
I try to insert the employees photo in Archive Link (release 46).
I write a massive report to do a batch input, but I cannot insert the path and the name of the picture.
Because the BTC don't memory the "call method cl_gui_frontend_services=>file_open_dialog"
I wrote the folowing report
*& Report ZHR_BDC_UPLOADPIC
REPORT zhr_bdc_uploadpic
NO STANDARD PAGE HEADING LINE-SIZE 255.
* include
INCLUDE bdcrecx1.
* i n t e r n a l t a b l e s
DATA : BEGIN OF it_data OCCURS 0,
rp50g-pernr(8), " LIKE RP50G-PERNR,
rlgrap-filename(128),
END OF it_data.
* s t a r t - o f - s e l e c t i o n
START-OF-SELECTION.
PERFORM open_group.
CALL FUNCTION 'UPLOAD'
EXPORTING
filename = 'C:\PICTURE.TXT'
filetype = 'DAT'
TABLES
data_tab = it_data
EXCEPTIONS
conversion_error = 1
invalid_table_width = 2
invalid_type = 3
no_batch = 4
unknown_error = 5
gui_refuse_filetransfer = 6
OTHERS = 7.
IF sy-subrc NE 0.
WRITE : / 'Unable to upload data'.
STOP.
ENDIF.
LOOP AT it_data.
PERFORM bdc_dynpro USING 'OANEWCON' '0100'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=NEW'.
PERFORM bdc_field USING 'TOAOM-SAP_OBJECT'
'PREL'.
PERFORM bdc_field USING 'TOAOM-AR_OBJECT'
'HRICOLFOTO'.
PERFORM bdc_dynpro USING 'SAPLOA12' '0200'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=OK'.
PERFORM bdc_field USING 'OBJID-VALUE(01)'
it_data-rp50g-pernr.
PERFORM bdc_field USING 'OBJID-VALUE(02)'
'0002'.
*---- not exist - begin
* PERFORM bdc_dynpro USING 'SAPLOPTM' '0105'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'SAPB-SAPPOOLINF'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=OKAY'.
* PERFORM bdc_field USING 'SAPB-SAPPOOLINF'
* it_data-rlgrap-filename. "JPG'.
*---- not exist - end
PERFORM bdc_dynpro USING 'OANEWCON' '0100'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/EBACK'.
PERFORM bdc_transaction USING 'OAOH'.
CLEAR it_data-rlgrap-filename.
ENDLOOP.
PERFORM close_group.
Could you help me to understand a different method to upload the pictures?
Thank you in advance.
Best regards
Luca MoschioniHi,
for uploading the photograph you need to do some customization.
1. Initial customization
Execute transaction code OAQ1 and put X in all the boxes.
Execute t code OAB4 and schedule the job
Execute t code SPAD and configure an output device
Execute T code OANR and configure the number range
Execute T code OAGI and deactivate Print list management system
EXecute T code SA38 and execute program RAPARAM and check for rspo/archive_format and make sure it should have 2 assigned on it.
2. Execute t code OAC0 and configure content repository
Execute t code OAC2 and make your document type
Assign JPG doc class to your doc type made in OAC2 in t code OAC3.
3. Now go to transaction code OAD5 and configure your settings
Come to t code OAWD and upload all your scanned photo to SAP
I know the procedure is tedious and lenghthy but there is no way out.
If it helps you then reward it.
Enjoy
For further help contact at [email protected] -
OIM - SAP Employee Recon and SAP User Management Connectors vs. OC4J
In reading through the SAP connector documentation I've found that we cannot use OC4J to run OIM if the 9.0.3 SAP User Management Connector or SAP Employee Recon Connector is used. This is all related to a conflict in JDK versions supported between the SAP JCo (Java Connector) library and OC4J. A thought we've had is to use a Remote Manager for these connectors. Can anyone validate this approach? Is it possible to use a different JDK version with your remote manager? Is there another workaround that anyone is aware of?
ThanksHi,
The remote manager should work with different JDKs. We are going to be doing the same thing for one of our adapters.
As for SAP, I cannot think of another workaround -- we actually abandoned the SAP JCo approach and are doing web services with XI.
Thanks,
Deborah
http://www.linkedin.com/in/dvolk -
Hi experts,
I am developing a Webdynpro application which uses GP APIs to interact with a GP process.
I am able to create a local project and add SAP EU as dependency.
When I create a DI based DC, I get to see SAP EU in the Active DC list, but it appears to be empty.
Following are the configurations I followed.
1. Added SAP EU as a dependency to the track in SLD
2. Synchronized the track definition in CMS and made sure that it is same as SLD defination
3. Copied SAP EU SCA file in the inbox folder of CMS
After doing these activities I expect that I should be able to see the SCA file in checkin tab, but I am not able to see SAP EU listed in checkin tab.
What could be wrong? Appreciate your valuable inputs.
For your reference, I am using version 7.01 SP5
Thanks,
AshutoshHi,
if you managed to find the CAF-EU SC (release 701) in SLD after updating the SLD content using the note 669669 (as suggested by Pascal), then you need to assign it to your custom software using build time dependencies (plus further SCs you require for your development). As soon as it is done, you need to trigger "update CMS" on the domain data tab of the landscape configurator of the CMS webui, which will allow that your custom software will be available in CMS when creating the track and adding your custom SC to it. As soon as the track has been created (and configured properly, e.g. runtime system config), you have nothing more to do, than check-in the corresponding SCs in transport studio (check-in tab), and import them at least to the development buildspace (development tab). If this is succesful, you can tell your developer colleagues to start up their NWDS and import the development configuration of this track.
Best Regards,
Ervin -
Hi,
I am quite new and in Lumira. Last 5-6 month i have create some report and graph
etc using lumira. What i have done is i have download it into my laptop and
work on it. I connect to universe,database using sybase iq jdbc connectivity to
create report.
Now suppose three users from same organiation want to use this product in
that case is it possible to install it in some server and all three user
connect to this server to create report? or each of them have to install it in
their own computer?
Thanks
and regards
SandipHi Sandip,
I would recommend that you check out this video by SAP's Joanna Denford.
Share a Visualization or Dataset: SAP Lumira Cloud (June 2013) - YouTube
It will take you through the process of sharing your Lumira findings with others on your team. Please note, everyone you wish to share with will need their own SAP Lumira Cloud account as well as a desktop account to enable this. If you don't already have a Lumira Cloud account, you can register for one here:https://cloud.saplumira.com/landing-page.jsp.
Also, please check out our official Lumira Tutorial page here:Official Product Tutorials – SAP Lumira
Maybe you are looking for
-
IS THR ANY fm WHICH returns employee subgroup grouping(ZEITY),holiday calender(MOFID),personnel subarea grouping (MOSID), work schedukle rule(SCHKZ) or wat is th name of DB whr i can fin all this details about any particula emp.
-
Exposing Business Objects to Java
Hi I need to use SAP BO in my Java application. Could anyone please suggest what is the best way to do this? Do I need to expose it as a web service only or are there any other better approaches? Thanks
-
Can i create Excel SpreadSheet in my iPhone App ?
Hello experts, I need to create and apply calculations in the excel spreadsheet in my iPhone app and then email that file. Now email thing is simple. But can i create the Excel file in my apps Documents Directory and then apply calculations/formulas
-
can i make a cal or connect internet on frimware updateing time please reply help me.
-
What's the best way to have podcasts play consecutively?
I want to have, for example, several NBC Nightly News podcasts play one after the other without having to form a playlist. Is there a way to do this?