Time Management effect of other sub-modules
Hi All,
Can anyone please tell me how will be the functionlity of SAP HCM will be effected if we have implemented SAP HR without Time Management.
I want to know the adverse effect of not implementing TM.
Regards
There are no adverse effects as such if time management not implemented.
Time Management provides things like
Absence Management
Clock in& out
Attendance Management
Cross Application time sheets
Personalized work schedules.
Thanks
Similar Messages
-
Oracle +ve time management vs SAP -ve time management
Hello Experts,
Currently our client is using oracle where if any employee works more than his planned time and any extra hours, it automatically shows the OT hours and upon his manager approval this will be included in payroll.
As ESS in scope with negative time management, what would be the best way to do this.
Looking forward for your reply.
Thanks in advance.
YusuffdHi Yusuff,
No exactly like this. No need to enter any data manually. System can generate it.
In fact IT2007 has OT allowance role in this scenario and the whole data will be in IT2011(clock-as in/out), IT2002 (as an attendance) or IT2001 (as an Absence).
Based on manager approval system will break record of IT2007 into two separate record. One as approved overtime and second as unapproved overtime(or extra work).
For more information find my replies at:
http://scn.sap.com/message/14056988#14056988
Overtime Scenario in Postive Time Management
Regards,
Omid -
Employees Salary without Time Management sub-module?
Dear Consultants,
Where to record employees attendance/absences (time related information) inorder to pay the salary through SAP-HR Payroll? We are implementing PA and Payroll (International). Time Management is not in the scope of the project.
Could you please let me know, how can we handle this without Time Management. What would be the limitations without Time Management sub-module.
Thank you all for your efforts.
Edited by: Business Analyst - HCM on May 20, 2009 2:20 PMYou have to create atleast the work schedule which will consist of DWS and PSW and then work scheedule rule. Also I think you will require to configure feature SCHKZ to default work schedule rule in IT0007.
After doing this configuration you can create wagetypes related to ur time and you can pay these wage types through IT2010 ee remuneration info
if the wt will have rate then that rate you can maintain in T510 and may be to meet the complete requirement you need to write little bit code in CATS exit.
otherwise you will be able to pay through 2010 and you can enter the data thru CAT2 tcode. Just you need to create a profile and set the view for entering the data like single entry or mass entry.
SPRO->IMG->Cross-Application Components->Time Sheet->Specific Settings for CATS Regular->CATS Regular->Record Working Time
hope this will help
guds -
Hi,
Could you please provide the steps for end to end implementation on time management module in SAP HR?You have to create atleast the work schedule which will consist of DWS and PSW and then work scheedule rule. Also I think you will require to configure feature SCHKZ to default work schedule rule in IT0007.
After doing this configuration you can create wagetypes related to ur time and you can pay these wage types through IT2010 ee remuneration info
if the wt will have rate then that rate you can maintain in T510 and may be to meet the complete requirement you need to write little bit code in CATS exit.
otherwise you will be able to pay through 2010 and you can enter the data thru CAT2 tcode. Just you need to create a profile and set the view for entering the data like single entry or mass entry.
SPRO->IMG->Cross-Application Components->Time Sheet->Specific Settings for CATS Regular->CATS Regular->Record Working Time
hope this will help
guds -
Need PPT's on Time management Module
Hi Every body,
Could any one of you provide me some PPT on Time management as i need to take session on that.
It's bit priority.As i don't have idea to prepare this.
Hope some PPT's from you people.
Thanks in advance...hi sumana,
what exactly are your needs?
find documentation here http://docs.sun.com/app/docs/prod/comp.app#hic
regards chris -
Why can I not browse other backups in Time Manager
Hi
I'm not sure if this is the correct place to post but I could not find a Community for Time Manager.
I'm trying to restore a file from a Time Machine backup of my Late 2008 MacBook on to a Late 2014 Mac Mini both running Yosemite. The backup I'm trying to access is on a 3Tbyte Time Capsule which is shared by both machines plus another MacBook Air.
When I go into Time Machine and select Browse Other Backups I can see the backups for all 3 machines but when I select the backup for the MacBook but all that is ever displayed in to "Star Wars" display is the current view for the Mac Mini.
Am I doing something wrong?
I would appreciate some help.
Many ThanksThanks again Linc
I have used Time Machine to restore files and emails previously on my MacBook from its own backups. In this case I am trying to restore a file on to a Mac Mini from the backups of the MacBook. I understood from the Pondini FAQ #17 http://pondini.org/TM/17.html that the way to do this is :- on my Mac Mini right click on the Time Manager icon in the menu bar, hold down the Alt/Option key and select "Browse Other Backup Disks...". This displays a list of backups available from which I select the MacBook's backups and then click "Use Selected Disk". This takes me into the Star Wars array. However the only data that is displayed when I do this is the current view of the files on my Mac Mini. It doesn't open the backups for the MacBook to allow me to select the required file.
I'm obviously missing something along the line and really appreciate your interest. -
ABAP-HR, Time Management
Hi,
In HR-ABAP, i want to know complete funciton modules, macros and few sample programs that are related to TIME MANAGEMENT in HR-ABAP.
How to generate a report for different type of leaves, Starting time and ending time of employee daily, his shedules, etc.,
Hoping for best results with in less time.
Thanks&Regards.
Shiva.Use this BAPI in your Report
BAPI_EMPATTABS_GETDETAIL -
Hi all i have doubt in time management
Hi All,
I have a doubt in time management,
Q) If in a enterprise diversified daily work shedule are there, i.e if aemployee is working 4hrs a day & other is working 6 hrs per day, & other is working 1 day a week and the client does not want these many of work shedules.
What advise you give to the client
if any body give the answer
Thanks nad regards
srinivasHi Srinivas,
If your client is persistent of not wanting too many work schedules, Flexible Work Schedule will resolve your issue.
- assign a Flexible workschedule(planned working time is 24 hrs 0:00-24:00) for all these kind of employees.
- I hope you know the effects of Flexible workschedules- Then you need to desing your schema as positive time eval
If your client does not like this idea, as others suggested no essay way ...
Hope this will work.
thanks
Mahesh -
hi experts
kindly provide the list of all the PCRs of time management schema TM04 with description.
so that i can understand which rule is used to do what.
as im trying to learn about rules, functions & operations.
i also request the list of Funtions and operations on time management schema TM04.
i understand i can pick them up from pe02 and pe04 and i tried it too but i really need them as soon as possible
and its taking time for me to work around so once u experts provide me the list of rules function and operations of
time managemnt i can work on them more effectively with certain data in my hand.
Please provide me the list of rules ,fucntions and operations.
special request to my favorite members(sikindar,anantha prakash,Ram manohar)
regardsHello Sikandar,
Can you also kindly forward me TM Schema and PCR docs..Im a complete layman in these areas, though ive a brief understanding of how it functions.Also do uve any idea on End user manuals and HR Report Management, I mean docs on how to generate reports by an Enduser, especially payroll related. If so kindly do help me.
Thanks a million in Advance,
[email protected] -
HR toolbox payroll/Time management step by step
Hi Experts,
Can you please tell me the PU12 Payroll/Time management step by step process?.
Thanks.The SAPADPFR process model is designed to launch a payroll and export payroll data to SAP using the Interface with external payroll systems (pu12) transaction. The system creates a process corresponding to the process model for each of the payroll services in the Services menu. In the scenario, ADP-GSI indicates whether the service must use the process model or not. You can copy the SAPADPFR standard process model and adapt it to your companyu2019s requirements.
To launch the SAPADPFR process model, the name of the process model must be entered in the PM_PAIE constant (SAPADDFR by default). Program RPPM0FI creates a link between the different programs run in the process model and the process itself.
The sequence of programs defined in this process model is as follows:
○ OT_SELECT_PERNR_OTFR initializes the process model. The user selects the personnel numbers for the payroll areas pre-selected in a dialog box. The status of the payroll areas considered on Released for payroll is updated in the HRPAYFR_ADP_PERNUM BAdl implemented by ADP-GSI.
○ RPCALCF0 launches the payroll for each employee selected.
○ RPIF00FI creates an export file based on the options defined in pu12 for the FADP interface format.
○ RPPMFLFI calls program RPFL00FI with the file formatting data based on the options defined in pu12.
○ RPTMSEFI converts the file to ZADIG format.
○ RPSENDFI sends the data file to ADP.
The value of the TEM_DVR code affects the following steps:
○ RPDOWNFI extracts the reference values.
○ RPSENDFI sends the reference values.
○ RPPMCDFI deletes the reference values file and indicates the end of the process.
A breakpoint is planned after each program that does not use the PNP logical database:
1. to manage return codes as they appear in a ADP scenario: a return code less than or equal to 50 stops the process
2. to call the HRFR_PROCESS_STOP_OT_SAPOTFR function module
A conditional breakpoint is planned for management codes. Depending on these codes, it is possible to skip these steps. These breakpoints call the HRFR_PROCESS_NAVIG_OT_SAPOTFR function module.
In the SAPADPFR process model, in the event of an error the process stops on the step following the conditional breakpoint. The function module called allows you to ascertain whether the previous step (STOP_OTFR) was carried out correctly.
A procedure for purging processes is integrated into the FINPER service after the process is closed.
It is possible to view the result of the process and the updated status of the ADP exchange in the exchange table (T5F6K). Program RPDV90FI creates a link between the completed process and the ADP transmission table. You can view this information in the process log for this program. -
Hi Experts,
I am very new to Time Module both Technically and Functionally. Please share any good document if you have. (Functional: Steps involved in Time Management; Technical: Relation between several tables and access to time results)
Mainly i have to complete one object from client which is on Time and Quota balances.
I have to send a flat file with the following information.
Absence Quota Type,
Quota Text,
Sick Leave Quota Beginning Balance
Sick Leave Quota Accrued
Sick Leave Quota YTD Used
Sick Leave Quota Remaining
Sick Leave Quota every pay period
Greatly appreciated if any one gives step by step logic for this,
Thank you,
Ravi.if u want to give the above information
try the tcode PT_QTA10 once ................ -
Hi Experts,
Im relatively new to this fourm, and also to Time Management Module.
We are implementing Negative Time Management for our client.
Have a clarification with Time Management Status.
I have suggested '0' to be defaulted as it is going to be Negative time management.
Just for my understanding would like to know the difference between the time management status 0, 7 & 9.
Also we have LWOP and Holiday Wages in place.
your expert answers awaited...
Cheers,
Sri...Indicator 0 or BLANK:
The employee's actual times are not recorded, and his/her time data is not accounted using the time evalulation program.
Indicator 1:
The employee's actual times are recorded and he/she participates in time evaluation.
Example:
The employee's actual times are recorded at a time recording terminal.
The employee's actual times are recorded in the Attendances infotype (2002).
Indicator 2:
Employees' actual times are recorded and they take part in plant data collection. Their time data is accounted using the time evaluation program.
Example:
Employees' actual times are recorded using PDC systems.
Employees' actual times are recorded in the Attendances infotype (2002).
Indicator 8:
This indicator is intended for external employees. The employee's actual times are not recorded, attendances are recorded in the Attendances infotype (2002), and time data is accounted in time evaluation.
Indicator 9:
You can use indicator 9 for employees for whom only exceptions to the work schedule are recorded. In this case, the employees' actual times are not recorded, but they do participate in time evaluation.
I hope it helps you!!!
CheerS!! -
HR-PDC , Time Management Interface Question
Hi,
I am involved in a project that links Kronos Time Management system with SAP 4.6C . Since Kronos is certified for standard interface HR-PDC, we can use it for integration without patch-work.
For more information, go to <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/developerareas/sdnservices/icc">this link</a> and on the right hand side, select Human Resources from Integration Scenarios -> Business Application Integration. Select HR-PDC from the list of interfaces available for HR.
There are a few concerns though, the most important being related to transfer of HR mini-master data. It is mentioned in the interface documentation that SAP always sends complete master data for all employees and that deltas are not supported.
Now, the customer has around 50,000 employees and sending data for each one of them every night doesn't seem to be a workable solution, especially when only 30-50 records change in a day. I understand that sending deltas can be accomplished through some tweaking, I am wondering why the standard interface won't support them, knowing the fact that all historical (delta) information is available from cluster PCL4.
Although I understand that SAP themselves are in a better position to answer the question of why the interface is like that, I am asking if anyone experienced any short-comings with sending delta information. For example, perhaps the number of scenarios for which delta was to be transferred were too many and sending complete information was more suitable. So if anyone has had previous experience of working on HR-PDC, please shed some light on their experience.
Secondly, is there a standard interface to record and send changes in Organization and Staffing (create, modifiy, delete) to a sub-system? I am talking in relation to t. code PPOME. Is HR-OCI the right interface for that???
Thanks and regards
Message was edited by: Shehryar KhanHi,
Thanks for the reply. It was quite helpful.
It is fine to download time balances but downloading whole employee (mini)master data each day is a bit difficult to explain to stakeholders. Perhaps I may need to create my own driver program that populates data for modified employees only. Thoughts??? Is this the correct approach???
As far as the second one is concerned, I am interested in downloading new/modified OM records like departments, jobs, positions, etc. It seems the same can be catered for by using HR-PDC through business object RCVPEVTREC, method receivePObject. I perhaps overlooked the interface specs.
Thanks again and I may get back with more questions.
Regards -
Regarding Time management in HR
Hi Experts,
I am new to HR-Abap, Can any body give brief idea about time management in hr in Techincal point of view .
Thanks and regards,
Sravanthi.Hi
In time related infotypes records are multiple for a single pernr
say for example LEAVES
within a time for PERNR you will find different types of leaves
go and see the infotypes data practically PA2001 and PA2005, r etc
see the sample report on time related data
REPORT zh_absence_quota
NO STANDARD PAGE HEADING
MESSAGE-ID zh_msg
LINE-SIZE 169
LINE-COUNT 60(1).
T A B L E S D E C L A R A T I O N S
TABLES: pernr, " Logical PNP
t001p, " Personnel Subarea
t529u, " Employment Status
t500p, " Personnel Area
t501, " Employee Group
t503k, " Employee Subgroup
t549a, " Payroll Area
t554s, " Absence Type
t554t, " Absence Type Texts
t556a, " Quota Type
t527x, " Orgn. Unit
t556b, " Quota Type Text
pa0003. " Payroll Status
INFOTYPES:
0000, " Actions
0001, " Organizational Assignment
2006, " Absence Quota
2001. " Absences
T Y P E S D E C L A R A T I O N S
Employee Absence Structure
TYPES: BEGIN OF s_2001,
pernr TYPE persno, " Personal Number
awart TYPE awart, " Absence Type
subty TYPE subty, " Sub Type
endda TYPE endda, " End date
begda TYPE begda, " Begin date
abrtg TYPE abrtg, " Absence days
ename TYPE emnam, " employee Name
atext TYPE abwtxt, " Absence Type Text
END OF s_2001.
Employee Absence Quota Structure
TYPES: BEGIN OF s_2006,
pernr TYPE persno, " Personal Number
ktart TYPE abwko, " Absence Quota Type
year(4) TYPE n, " Year
subty TYPE subty, " Sub Type
endda TYPE endda, " End date
begda TYPE begda, " Begin date
anzhl TYPE ptm_quonum, " Absence Entitlement days
ename TYPE emnam, " employee Name
ktext TYPE kotxt, " Absence Type Text
kverb TYPE kverb, " Deduction Quota days
anzhb TYPE ptm_quonum, " Balance days
END OF s_2006.
Combined Employee Absence and Quota Structure
TYPES: BEGIN OF s_rep,
pernr TYPE persno, " Personal Number
ktart TYPE abwko, " Absence Quota Type
year(4) TYPE n, " Year
anzhl TYPE ptm_quonum, " Absence Entitlement days
kverb TYPE kverb, " Deduction Quota days
anzhb TYPE ptm_quonum, " Balance days
ktext TYPE kotxt, " Quota Type Text
awart TYPE awart, " Absence Type
abrtg TYPE abrtg, " Absence days
ename TYPE emnam, " employee Name
atext TYPE abwtxt, " Absence Type Text
endda TYPE endda, " End date
begda TYPE begda, " Begin date
END OF s_rep.
Declaration of Variables
DATA : gv_atext TYPE abwtxt, " Absence Type Text
gv_ktext TYPE kotxt, " Absence Type Text
gv_title1 TYPE sylisel, " Report title
gv_year(4) TYPE c, " Year
gv_mon(2) TYPE c, " Month
gv_hrs TYPE abwtg, " Hours
gv_date TYPE sydatum, " Date
gv_date1 TYPE sydatum, " Date
gv_dial. " Color flag
Declaration of Constants
CONSTANTS :
c_x TYPE c VALUE 'X', " Sign
c_1 TYPE persg VALUE '1', " Emp Group
c_pernr(8) TYPE n VALUE '00000000', " Pernr
c_moabw TYPE moabw VALUE '01', " Per SA Grouping
c_mozko TYPE mozko VALUE '01', " Per SA Grouping
c_mopgk TYPE mopgk VALUE '1', " Emp SGrp Grouping
c_endda TYPE sydatum VALUE '99991231', " End Date
c_val1(2) TYPE c VALUE '31', " Date Type
c_val2(2) TYPE c VALUE '12', " Date Type
c_val LIKE p0041-dar01 VALUE '01', " Date Type
c_date1 LIKE sy-datum VALUE '18000101'. " Date
I N T E R N A L T A B L E S D E C L A R A T I O N S
DATA: i_2001 TYPE STANDARD TABLE OF s_2001 WITH HEADER LINE,
i_2006 TYPE STANDARD TABLE OF s_2006 WITH HEADER LINE,
i_rep1 TYPE STANDARD TABLE OF s_2006 WITH HEADER LINE,
i_rep TYPE STANDARD TABLE OF s_rep WITH HEADER LINE.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_ktart FOR t556a-ktart, " Absence Quota Type
s_awart FOR t554s-subty. " Absence Type
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) text-003. " Quota & Absence
PARAMETERS: p_qa RADIOBUTTON GROUP rb1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) text-004. " Quota
PARAMETERS: p_q RADIOBUTTON GROUP rb1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) text-005. " Absence
PARAMETERS: p_a RADIOBUTTON GROUP rb1.
SELECTION-SCREEN END OF LINE.SELECTION-SCREEN END OF BLOCK b2.
I N I T I A L I Z A T I O N *
INITIALIZATION.
A T S E L E C T I O N - S C R E E N *
AT SELECTION-SCREEN.
Validate the screen fields
PERFORM validate_screen.
S T A R T - O F - S E L E C T I O N *
START-OF-SELECTION.
Selection of Period
PERFORM get_period.
Get PERNR from LDB
GET pernr.
IF p0000-stat2 <> '0'.
Get the data from PA0001,PA2001, PA2006
PERFORM get_pers_data.
ENDIF.
T O P - O F - P A G E *
TOP-OF-PAGE.
Header of the List
PERFORM header.
E N D - O F - P A G E *
Footer
END-OF-PAGE.
IF p_qa = c_x.
Display both Absence and Quota Data
WRITE /1(188) sy-uline.
ELSEIF p_q = c_x.
Display only Quota Data
WRITE /1(114) sy-uline.
ELSEIF p_a = c_x.
Display only Absence Data
WRITE /1(125) sy-uline.
ENDIF.
E N D - O F - S E L E C T I O N *
END-OF-SELECTION.
Combine the Absence and Quota Data
PERFORM append_data.
IF p_qa = c_x.
Display both Absence and Quota Data
PERFORM display_qa_data.
ELSEIF p_q = c_x.
Display only Quota Data
PERFORM display_q_data.
ELSEIF p_a = c_x.
Display only Absence Data
PERFORM display_a_data.
ENDIF.
*& Form validate_screen
Validation of Selection Screen fields
FORM validate_screen .
Validation of Personnel Number
CLEAR pa0003.
IF NOT pnppernr[] IS INITIAL.
SELECT pernr
FROM pa0003 UP TO 1 ROWS
INTO pa0003-pernr
WHERE pernr IN pnppernr.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Personnel Number'(006).
ENDIF.
ENDIF.
Validation of Employee Status
CLEAR t529u.
IF NOT pnpstat2[] IS INITIAL.
SELECT SINGLE statv
INTO t529u-statv
FROM t529u
WHERE statv IN pnpstat2 AND
statn = '2' AND
sprsl = sy-langu.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Invalid Employee Status'(007).
ENDIF.
ENDIF.
Validation of Personnel Area
CLEAR t500p.
IF NOT pnpwerks[] IS INITIAL.
SELECT persa
FROM t500p UP TO 1 ROWS
INTO t500p-persa
WHERE persa IN pnpwerks.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Personnel Area'(008).
ENDIF.
ENDIF.
Validation of Personnel Sub Area
CLEAR t001p.
IF NOT pnpbtrtl[] IS INITIAL.
SELECT btrtl
FROM t001p UP TO 1 ROWS
INTO t001p-btrtl
WHERE btrtl IN pnpbtrtl.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Personnel Sub Area'(009).
ENDIF.
ENDIF.
Validation of Employee Group
CLEAR t501.
IF NOT pnppersg[] IS INITIAL.
SELECT persg
FROM t501 UP TO 1 ROWS
INTO t501-persg
WHERE persg IN pnppersg.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Employee Group'(010).
ENDIF.
ENDIF.
Validation of Employee Sub Group
CLEAR t503k.
IF NOT pnppersk[] IS INITIAL.
SELECT persk
FROM t503k UP TO 1 ROWS
INTO t503k-persk
WHERE persk IN pnppersk.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Employee Sub Group'(011).
ENDIF.
ENDIF.
Validation of Payroll Area
CLEAR t549a.
IF NOT pnpabkrs[] IS INITIAL.
SELECT abkrs
FROM t549a UP TO 1 ROWS
INTO t549a-abkrs
WHERE abkrs IN pnpabkrs.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Employee Payroll Area'(026).
ENDIF.
ENDIF.
Validation of Absence Type
CLEAR t554s.
IF NOT s_awart[] IS INITIAL.
SELECT subty
FROM t554s UP TO 1 ROWS
INTO t554s-subty
WHERE subty IN s_awart AND
moabw EQ c_moabw AND
endda EQ c_endda.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Employee Absence Type'(012).
ENDIF.
ENDIF.
Validation of Absence Quota Type
CLEAR t556a.
IF NOT s_ktart[] IS INITIAL.
SELECT ktart
FROM t556a UP TO 1 ROWS
INTO t556a-ktart
WHERE ktart IN s_ktart AND
mopgk EQ c_mopgk AND
mozko EQ c_mozko AND
endda EQ c_endda.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e999 WITH 'Incorrect Employee Quota Type'(013).
ENDIF.
ENDIF.
ENDFORM. "validate_screen
*& Form get_period
Get the Correct Period based on Selection screen selection
FORM get_period.
CLEAR: gv_year,gv_mon, gv_date, gv_date1.
gv_year = sy-datum+0(4).
gv_mon = sy-datum+4(2).
IF pnptimr1 = c_x. " Current Date
pnpbegda = sy-datum.
pnpendda = sy-datum.
ELSEIF pnptimr2 = c_x. " Current Month
CONCATENATE gv_year gv_mon c_val INTO gv_date.
CONCATENATE gv_year gv_mon c_val1 INTO gv_date1.
pnpbegda = gv_date.
pnpendda = gv_date1.
ELSEIF pnptimr3 = c_x. " Current Year
CONCATENATE gv_year c_val c_val INTO gv_date.
CONCATENATE gv_year c_val2 c_val1 INTO gv_date1.
pnpbegda = gv_date.
pnpendda = gv_date1.
ELSEIF pnptimr4 = c_x. " Upto Today
pnpbegda = c_date1.
pnpendda = sy-datum.
ELSEIF pnptimr5 = c_x. " From Today
pnpbegda = sy-datum.
pnpendda = c_endda.
ELSE.
IF ( pnpbegda IS INITIAL AND pnpendda IS INITIAL ).
pnpbegda = c_date1.
pnpendda = c_endda.
ELSEIF pnpbegda IS INITIAL AND NOT pnpendda IS INITIAL.
pnpbegda = c_date1.
pnpendda = pnpendda.
ELSEIF NOT ( pnpbegda IS INITIAL AND pnpendda IS INITIAL ).
pnpbegda = pnpbegda.
pnpendda = pnpendda.
ENDIF.
ENDIF.
ENDFORM. "get_period
*& Form get_pers_data
Get the Absence and Quota Data from PA0001,PA2001,PA2006
FORM get_pers_data.
DATA: lv_year1(4) TYPE n,
lv_year2(4) TYPE n,
lv_date1 TYPE sydatum,
lv_date2 TYPE sydatum,
lv_anzhb TYPE ptm_quonum. " Last Year Balance days
Get data from Respective Infotypes
rp_provide_from_last p0001 space pnpbegda pnpendda.
Absence Data
LOOP AT p2001 WHERE pernr = pernr-pernr AND
begda GE pnpbegda AND
endda LE pnpendda.
IF p2001-awart IN s_awart.
i_2001-pernr = pernr-pernr.
i_2001-subty = p2001-subty.
i_2001-awart = p2001-awart.
i_2001-abrtg = p2001-abrtg.
i_2001-begda = p2001-begda.
i_2001-endda = p2001-endda.
READ TABLE p0001 WITH KEY pernr = p2001-pernr.
i_2001-ename = p0001-ename.
Get the Absence Type Text
CLEAR gv_atext.
SELECT SINGLE atext INTO gv_atext FROM t554t
WHERE sprsl = sy-langu AND
moabw = c_moabw AND
awart = p2001-awart.
IF sy-subrc = 0.
i_2001-atext = gv_atext.
ENDIF.
APPEND i_2001.
CLEAR i_2001.
ENDIF.
ENDLOOP.
Quota Data
LOOP AT p2006 WHERE pernr = pernr-pernr AND
begda GE pnpbegda AND
endda LE pnpendda.
IF p2006-ktart IN s_ktart.
i_2006-pernr = pernr-pernr.
i_2006-subty = p2006-subty.
i_2006-begda = p2006-begda.
i_2006-endda = p2006-endda.
i_2006-year = p2006-endda+0(4).
i_2006-ktart = p2006-ktart.
i_2006-anzhl = p2006-anzhl.
i_2006-kverb = p2006-kverb.
i_2006-anzhb = p2006-anzhl - p2006-kverb.
READ TABLE p0001 WITH KEY pernr = p2001-pernr.
i_2006-ename = p0001-ename.
Get the Quota Type Text
CLEAR gv_ktext.
SELECT SINGLE ktext INTO gv_ktext FROM t556b
WHERE sprsl = sy-langu AND
mopgk = c_mopgk AND
mozko = c_mozko AND
ktart = p2006-ktart.
IF sy-subrc = 0.
i_2006-ktext = gv_ktext.
ENDIF.
APPEND i_2006.
CLEAR i_2006.
ENDIF.
ENDLOOP.
For Vacation Quota (80) get the Balance of the Last Year and
add to the Current Year Quota
LOOP AT i_2006.
IF i_2006-ktart = '80'.
lv_year1 = i_2006-endda+0(4).
lv_year2 = lv_year1 - 1.
CONCATENATE lv_year2 '01' '01' INTO lv_date1.
CONCATENATE lv_year2 '12' '31' INTO lv_date2.
LOOP AT p2006 WHERE pernr = i_2006-pernr AND
begda GE lv_date1 AND
endda LE lv_date2 AND
ktart = '80'.
lv_anzhb = p2006-anzhl - p2006-kverb.
i_rep1-pernr = i_2006-pernr.
i_rep1-ktext = i_2006-ktext.
i_rep1-anzhl = p2006-anzhl.
i_rep1-kverb = p2006-kverb.
i_rep1-ename = i_2006-ename.
i_rep1-begda = p2006-begda.
i_rep1-endda = p2006-endda.
i_rep1-anzhb = lv_anzhb.
i_rep1-ktart = '80'.
i_rep1-year = lv_year2.
APPEND i_rep1.
CLEAR: i_rep1.
ENDLOOP.
ENDIF.
CLEAR: lv_year1, lv_year2,
lv_date1, lv_date2,lv_anzhb.
ENDLOOP.
SORT i_rep1 BY pernr ktart.
ENDFORM. "get_pers_data
*& Form append_data
Put the Absence and Quota Data into one Report Int Table
FORM append_data.
CLEAR: i_rep.
REFRESH: i_rep.
SORT i_2001 BY pernr awart.
SORT i_2006 BY pernr ktart year.
Move I_REP1 data into i_2006
LOOP AT i_rep1.
MOVE-CORRESPONDING i_rep1 TO i_2006.
APPEND i_2006.
CLEAR i_2006.
ENDLOOP.
Move the Absence and Quota Data into a final Int Table
LOOP AT i_2006.
i_rep-pernr = i_2006-pernr.
i_rep-ename = i_2006-ename.
i_rep-ktart = i_2006-ktart.
i_rep-anzhl = i_2006-anzhl.
i_rep-kverb = i_2006-kverb.
i_rep-ktext = i_2006-ktext.
i_rep-anzhb = i_2006-anzhb.
i_rep-year = i_2006-year.
CLEAR i_2001.
CASE i_2006-ktart.
WHEN '81'.
PERFORM get_2001 USING i_2006-pernr '1000' i_2006-year.
WHEN '50'.
PERFORM get_2001 USING i_2006-pernr '1002' i_2006-year.
WHEN '80'.
PERFORM get_2001 USING i_2006-pernr '1001' i_2006-year.
WHEN '56'.
PERFORM get_2001 USING i_2006-pernr '1003' i_2006-year.
WHEN '51'.
PERFORM get_2001 USING i_2006-pernr '1004' i_2006-year.
WHEN '52'.
PERFORM get_2001 USING i_2006-pernr '1005' i_2006-year.
WHEN '54'.
PERFORM get_2001 USING i_2006-pernr '1006' i_2006-year.
WHEN '53'.
PERFORM get_2001 USING i_2006-pernr '1007' i_2006-year.
WHEN '55'.
PERFORM get_2001 USING i_2006-pernr '1008' i_2006-year.
WHEN '57'.
PERFORM get_2001 USING i_2006-pernr '1009' i_2006-year.
WHEN '90'.
PERFORM get_2001 USING i_2006-pernr '2000' i_2006-year.
WHEN '58'.
PERFORM get_2001 USING i_2006-pernr '2001' i_2006-year.
WHEN '59'.
PERFORM get_2001 USING i_2006-pernr '2002' i_2006-year.
WHEN '91'.
PERFORM get_2001 USING i_2006-pernr '2003' i_2006-year.
ENDCASE.
IF sy-subrc <> 0.
APPEND i_rep.
ENDIF.
CLEAR i_rep.
ENDLOOP.
SORT i_rep BY pernr ktart year.
DELETE i_rep WHERE pernr = ' '.
ENDFORM. " append_data
*& Form display_qa_data
Display the Absence and Quota Data
FORM display_qa_data.
DATA: lv_flag, " New Flag
lv_tot2 TYPE ptm_quonum. " Absence Balance days
IF i_rep[] IS INITIAL.
MESSAGE i000 WITH 'No Data found'(014).
ELSE.
LOOP AT i_rep.
toggle color
PERFORM toggle_color.
IF lv_flag <> space.
NEW-LINE.
ENDIF.
AT NEW pernr.
READ TABLE i_rep INDEX sy-tabix.
WRITE:/1 sy-vline,2(8) i_rep-pernr,
10 sy-vline,11(40) i_rep-ename.
ENDAT.
AT NEW ktart.
READ TABLE i_rep INDEX sy-tabix.
WRITE: 1 sy-vline, 10 sy-vline,
51 sy-vline,52(25) i_rep-ktext.
ENDAT.
AT NEW year.
READ TABLE i_rep INDEX sy-tabix.
WRITE: 1 sy-vline, 10 sy-vline,
51 sy-vline,
77 sy-vline, 78(4) i_rep-year,
82 sy-vline, 83(11) i_rep-anzhl,
94 sy-vline, 95(25) i_rep-atext,
120 sy-vline,133 sy-vline,
144 sy-vline,
155 sy-vline,156(13) i_rep-anzhb,
169 sy-vline.
lv_tot2 = lv_tot2 + i_rep-anzhb.
ENDAT.
WRITE: 1 sy-vline, 10 sy-vline,
51 sy-vline, 77 sy-vline,
82 sy-vline, 94 sy-vline,
120 sy-vline,121(12) i_rep-abrtg NO-ZERO,
133 sy-vline,134(10) i_rep-begda NO-ZERO,
144 sy-vline,145(10) i_rep-endda NO-ZERO,
155 sy-vline,169 sy-vline.
NEW-LINE.
AT END OF pernr.
WRITE : /1(169) sy-uline.
SUM.
FORMAT COLOR 3.
WRITE:/1 sy-vline, 10 sy-vline,
51 sy-vline, 77 sy-vline,
82 sy-vline, 94 sy-vline,
120 sy-vline,121(12) i_rep-abrtg,
133 sy-vline,144 sy-vline,
155 sy-vline, 156(13) lv_tot2,
169 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(169) sy-uline.
CLEAR lv_tot2.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " display_qa_data
*& Form display_q_data
Display only the Quota Data
FORM display_q_data.
DATA: lv_flag. " New Flag
SORT i_2006 BY pernr ktart year.
IF i_2006[] IS INITIAL.
MESSAGE i000 WITH 'No Data found'(014).
ELSE.
LOOP AT i_2006.
Toggle Color
PERFORM toggle_color.
IF lv_flag <> space.
NEW-LINE.
ENDIF.
AT NEW pernr.
READ TABLE i_2006 INDEX sy-tabix.
WRITE: /1 sy-vline, 2(8) i_2006-pernr,
10 sy-vline,11(40) i_2006-ename.
ENDAT.
AT NEW ktart.
READ TABLE i_2006 INDEX sy-tabix.
WRITE: 1 sy-vline,10 sy-vline,
51 sy-vline,52(25) i_2006-ktext.
ENDAT.
AT NEW year.
READ TABLE i_2006 INDEX sy-tabix.
WRITE: 1 sy-vline, 10 sy-vline,
51 sy-vline,
77 sy-vline,78(4) i_2006-year,
82 sy-vline,83(11) i_2006-anzhl,
94 sy-vline,95(13) i_2006-anzhb,
108 sy-vline.
NEW-LINE.
ENDAT.
AT END OF pernr.
WRITE : /1(108) sy-uline.
SUM.
FORMAT COLOR 3.
WRITE: /1 sy-vline, 10 sy-vline,
51 sy-vline,
77 sy-vline, 82 sy-vline,
94 sy-vline, 95(13) i_2006-anzhb,
108 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(108) sy-uline.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " display_q_data
*& Form display_a_data
Display Only the Absence Quota
FORM display_a_data.
DATA: lv_flag. " New Flag
SORT i_2001 BY pernr awart.
IF i_2001[] IS INITIAL.
MESSAGE i000 WITH 'No Data found'(014).
ELSE.
LOOP AT i_2001.
Toggle Color
PERFORM toggle_color.
IF lv_flag <> space.
NEW-LINE.
ENDIF.
AT NEW pernr.
READ TABLE i_2001 INDEX sy-tabix.
WRITE: /1 sy-vline, 2(10) i_2001-pernr,
10 sy-vline,11(40) i_2001-ename.
ENDAT.
WRITE: 1 sy-vline, 10 sy-vline,
51 sy-vline,52(25) i_2001-atext,
77 sy-vline,78(12) i_2001-abrtg,
90 sy-vline,91(10) i_2001-begda,
101 sy-vline,102(10) i_2001-endda,
112 sy-vline.
NEW-LINE.
AT END OF pernr.
WRITE : /1(112) sy-uline.
SUM.
FORMAT COLOR 3.
WRITE: /1 sy-vline, 10 sy-vline,
51 sy-vline,
77 sy-vline,78(12) i_2001-abrtg,
90 sy-vline,101 sy-vline,
112 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(112) sy-uline.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " display_a_data
*& Form header
Write the Report Header
FORM header .
data : lv_pers type pbtxt,
lv_orgn type orgtx.
gv_title1 = sy-title. " Set List Header
IF p_qa = c_x.
NEW-PAGE LINE-SIZE 193.
ELSEIF p_a = c_x.
NEW-PAGE LINE-SIZE 125.
ELSEIF p_q = c_x.
NEW-PAGE LINE-SIZE 119.
ENDIF.
Standard header
FORMAT RESET.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = gv_title1.
Get the Personal Area and Org.Unit Texts
clear : lv_pers,lv_orgn.
select single name1 into lv_pers
from t500p where persa = pnpwerks-low.
select single orgtx into lv_orgn
from t527x where sprsl = sy-langu and
orgeh = pnporgeh-low and
endda = c_endda.
if not lv_pers is initial.
write : /2 'Personal Area:'(017), 17(25) lv_pers color 7.
endif.
if not lv_orgn is initial.
write : /2 'Organization Unit:'(021), 20(25) lv_orgn color 3.
endif.
IF p_qa = c_x.
FORMAT COLOR COL_HEADING.
WRITE : /1(169) sy-uline.
WRITE:/1 sy-vline,2(8) 'Emp.No'(015) CENTERED,
10 sy-vline,11(40) 'Employee Name'(016) CENTERED,
51 sy-vline,52(25) 'Quota Description'(018) CENTERED,
77 sy-vline,78(4) 'Year'(027),
82 sy-vline,83(11) 'Entitlement'(019),
94 sy-vline,95(25) 'Absence Description'(022) CENTERED,
120 sy-vline,121(12) 'Absence days'(023),
133 sy-vline,134(10) 'From Date'(024),
144 sy-vline,145(10) 'To Date'(025),
155 sy-vline,156(13) 'Quota Balance'(020),
169 sy-vline.
WRITE : /1(169) sy-uline.
ELSEIF p_q = c_x.
FORMAT COLOR COL_HEADING.
WRITE : /1(108) sy-uline.
WRITE:/1 sy-vline,2(8) 'Emp.No'(015) CENTERED,
10 sy-vline,11(40) 'Employee Name'(016) CENTERED,
51 sy-vline,52(25) 'Quota Description'(018) CENTERED,
77 sy-vline,78(4) 'Year'(027),
82 sy-vline,83(11) 'Entitlement'(019),
94 sy-vline,95(13) 'Quota Balance'(020),
108 sy-vline.
WRITE : /1(108) sy-uline.
ELSEIF p_a = c_x.
FORMAT COLOR COL_HEADING.
WRITE : /1(112) sy-uline.
WRITE:/1 sy-vline,2(8) 'Emp.No'(015) CENTERED,
10 sy-vline,11(40) 'Employee Name'(016) CENTERED,
51 sy-vline,52(25) 'Absence Description'(022) CENTERED,
77 sy-vline,78(12) 'Absence days'(023),
90 sy-vline,91(10) 'From Date'(024),
101 sy-vline,102(10) 'To Date'(025),
112 sy-vline.
WRITE : /1(112) sy-uline.
ENDIF.
ENDFORM. " header
*& Form toggle_color
This routine alters the color of the records in the list
FORM toggle_color.
IF gv_dial = space.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
gv_dial = c_x.
ELSE.
FORMAT COLOR 1 INTENSIFIED OFF.
CLEAR gv_dial.
ENDIF.
ENDFORM. " toggle_color
*& Form get_2001
Get the ABsence type for each Quota type
FORM get_2001 USING p_pernr TYPE persno
p_value TYPE awart
p_year.
LOOP AT i_2001 WHERE pernr = p_pernr AND
awart = p_value AND
endda+0(4) = p_year.
i_rep-awart = i_2001-awart.
i_rep-abrtg = i_2001-abrtg.
i_rep-atext = i_2001-atext.
i_rep-begda = i_2001-begda.
i_rep-endda = i_2001-endda.
APPEND i_rep.
ENDLOOP.
ENDFORM. " get_2001
Regards
anji -
Hi Gurus,
I am trying to understand Time management concepts, pls help me on the following -
1) what is factory calendar, and special rules in factory calendar, and how is it different from holiday calendar.Is factory calendar applicable only to factories or to normal organisations under any circumstances?
2) I am trying to understand reference time in defining dynamic breaks in break schedules and i came across planned working time and normal working time. What is the difference between planned working time and normal working time?
thanks
KavitaKavitha
there is smthg called special rules on Factory calendar, pls check and if possible pls help me understand special rules in factory calendar.....have awarded points for ur guidance
*I BELIVE SPECIAL RULE FOR PM AND PP Module not for HR. any way thanks for asking i got new point*
*see example here*
*You do that using a special rule for the calendar. SCAL is the transaction code. Click the Maintain button then select the Factory calendar radio button and press the change (pencil) button.*
*Select your calendar then press the change (pencil) button again. Click on the Special rules button then the Create button (paper). Enter the From and To date(s) [same date if only one day] then if it WILL be a work day check the Workday field and you will need to enter Text.*
*If, for example, the day is a normal workday and you want to shut down for that date (or date range), this time leave the Workday check box empty.*
*Click the paper button when you're done entering the data then the save button (or the F-11 key). You're done.*
*This is configuration data therefore configuration for SCAL and SCA6_U must be allowed in your profile.*
also can u help me with the DWS class concept, i know DWS class 0 is for off days but what abt others 1-9, are they customer specific, and where are the DWS classes defined, i mean table name.
*DWS. 0 (work paid)*
*1-- Off--paid*
2Offunpaid
3 off--special day and
4 to 9 are customer specific are the days types.
Hope you got clarity with this
Best Regards
Maybe you are looking for
-
How to add ONE image as artwork for an entire album ?..
How do you add a single image as artwork for an entire album (i.e. without having redundant copies for each individual track). I already know that iTunes has its own artwork system that allows for this, but this is not helpful if the album art is not
-
Script to play an announcement..
Dear All, I need a simple TCL Script to play an announcement message and it will be played only after the working hours.. so it's just an announcement and the script doesn't have to do any digit collection or translation or any thing but the announce
-
BGP not communicating with 4th Hop
Hi All, PFA...I'm beginner to BGP & designed network like in attachment. I'm unable to ping R5 from R1. R1: interface Serial1/0 ip address 20.0.0.1 255.255.255.0 serial restart-delay 0 router bgp 200 no synchronization bgp log-neighbor-changes n
-
Unable to connect to Oracle Applications database (afscpgcs) after clone
Hi, I have just moved (clone using rapidclone) two of our 11.5.10.2 install from a solaris SPARC 8 to 10 . After the clone, while discoverer 10g works perfectly well in one environment, it is giving the error below in the another environment. - Faile
-
Eclipse-plugin for html editor
Hallo Experts If I change something in html-Page, I should you the strategy/tools/filemanager.jsp. But it is not convenient. There is one eclipse-plugin. Have you ever used it and how can I get this plugin? Thanks and Nice regards! Ping