Time Management (BW-HR Report)
Hi,
My requirment is to develop a BW Report on Following HR Information.
Organisational Unit
Date Selection
Absence Type
Staff ID
Staff Name
Absence Start Date
Absence End Date
Hours of Absence
Days of Absence
Can ant one advise he how can i achieve this.Which BC Data Source or from which table in HR do i need to pull the data from HR to BW
I shall be greatful if you can give me technical name of objects in BW
PLEASE DONT GIVE ME help.sap.com
Thanks
Hi,
I hope, this report is possible on the cube 0PT_C01.
http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/a5cfa183be443b8184aec085cf9a85/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/25/4a1d3c55a0f503e10000000a114084/frameset.htm
With rgds,
Anil Kumar Sharma .P
Similar Messages
-
SAP Time management reports for Ukraine
Hi All,
can anybody send me the list of Time management reports available for ukraine.
i have checked in other sites also, i am getting only standard reports, but i am not getting reports for ukraine. i have given ukraine country grouping also.
regards
VaniHai..
Personal Work Schedules (Report RPTPSH10)
Daily Work Schedules (Report RPTDSH20)
Attendance
Attendance/Absence Data: Overview (Report RPTABS20)
Attendance/Absence Data: Calendar View (Report RPTABS50)
Attendance/Absence Data: Multiple Employee View (Report RPTABS60
Attendance Check (Report RPTEAB00)
Attendances/Absences Overview Graphic (Report RPTLEA40)
Absence
Attendance/Absence Data: Overview (Report RPTABS20)
Attendance/Absence Data: Calendar View (Report RPTABS50)
Attendance/Absence Data: Multiple Employee View (Report RPTABS60
Attendances/Absences Overview Graphic (Report RPTLEA40)
Time Accounts
Time Leveling (Report RPTCMP00)
The Time Statement (Report RPTEDT00)
Cumulated Time Evaluation Results: Time Balances and Time Wage T
Time Accounts (Report RPTDOW00)
Displaying Absence Quota Information (Report RPTQTA10)
Displaying Time Evaluation Messages (Report RPTERL00) -
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 -
USE OF CATS IN Negative time management scinario
Hi Friends,
I need your guidance on following points
1) Is there any relevance of using CATS in negative time management.
2) If we have to use CATS in negative time management what should be the time management status o or 7
3) If we transfer the data to HR management does it updates 2002 IT
Hope for your reply plz
Thanks in advance
Regards
Rajesh RaiRajesh,
1. CATS is very much relevant in negative time management for payment of overtime, recording absences and attendances. In CATS, the employee would enter time using activity types which needs to be mapped to the relevant attendance / absence types. After approval, the times charged in the time sheets would be transferred to infotypes 2001 / 2002 / 2010 (can be used for overtime)
You can use the data transfer reports "RPTEXTPT" for Human Resources components
Pls. refer to the below link for information
http://help.sap.com/saphelp_47x200/helpdata/en/dc/f9783b05efdb18e10000000a114084/frameset.htm
2. You can use TMSTA "9" - Time evaluation - planned times while using CATS
3. CATS data can be very much transferred to infotype 2002
http://help.sap.com/saphelp_47x200/helpdata/en/dc/f9783b05efdb18e10000000a114084/frameset.htm
Hope this information helps
Regards
Raj -
How to read data from clusters ( Time Management )
Hi All,
How can we read data from cluster tables related to Time Management in different ways?
Can somebody help me please..
Thanks,
Sankar.Hi
Kindly check the following thread:
Cluster database
It has a sample code to read from & to store data in a cluster table
Hope you are looking for cluster tables in HR
Some useful HR tables:
HRP1000 - Infotype 1000 DB Table
HRP1001 - Infotype 1001 DB Table
HRP1028 - Infotype 1028 DB Table
Paxxxx - transparent tables for infotypes
PCL1 - HR Cluster 1
PCL2 - HR Cluster 2
PCL3 - HR Cluster 3
PCL4 - HR Cluster 4
PCL5 - HR/RP Cluster 5; HR Planning Usage
PERNR - Standard Selections for HR Master Data Reporting (Structure)
kindly check the following link for some useful HR tables:
http://www.atomhr.com/know_preview/SAP_HR_tables.htm
Hope this helps!
best regards,
Thangesh -
Design of Time Management infocube
Hi, I need the help of HR BW experts!!!
The scenario is this:
1) I'm loading transactional data for time and accidents through Flat files into an ODS
2) My final cube, must have the 0EMPLOYEE and their attributes as well to use in reports
3) I know master data 0EMPLOYEE is time dependant.
4) I added attributes as fieds in my Cube (for performance reasons). The question is WHICH IS THE BEST WAY TO FILL ALL ATTR?
I'm looking at the standard. In the doc there is 2 routines: Personne and a Global routine. But I can not see them!!! Even this, I understand that this attributes must be filled with the values according to the date of loadind (business rule).
So, do I have to create a function - routine to read master data according to the DATE of loading?
Or it is already done in the standard?
In SAP note 336229, it says:
4.All attributes of 0PERSON and 0EMPLOYEE must be time-dependent.
Maintenance of the validity slice (Transaction RSDV) for InfoCube 0PAPA_C02 after the first load of data:to-mode 'Fixed value' and '31.12.9998' as a date
What is it? Can apply for PT??
Please, if somebody has implemented this, PT information, Time Management, tell me which is the best solution for this, having into account performance issues.
Thank you!!
Regards
Rosana0employee has time dependent attributes.
So, when you are loading the transactional data, the system will check the attribute value, which is valid currently and load the data accordingly.
Lets say
0employee Valid from Valid to Country
10001 21.03.2008 22.03.2009 IN
10001 23.03.2009 31.12.9999 SG
Country is an attribute of 0employee.
When you are loading the data today, the system will check the valid country ( country = SG is valid today) and fill the attributes.
Hope this is clear.
Ravi -
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] -
Time management status and Payroll
Experts,
We are using TMS as 9 (Time evaluation of planned time) in IT0007. What does it mean in TM?
What is it's impact in Payroll.
Regards
Sk
Edited by: s k on Nov 17, 2008 10:24 AMYou can assign the following Time Management statuses in the Planned Working Time infotype (0007):
Time evaluation with planned times (0): Employees with this status are not selected for time evaluation. They cannot therefore be processed in time evaluation. The employeeu2019s time wage types are determined in Payroll time data processing.
Time Management Status for processing time data in Time Evaluation and passing on time wage types formed there to Payroll
Time evaluation of actual times (1) and Time Evaluation PDC (2): Employees with these statuses have all their actual times, that is, all attendance and absence data, recorded*. It makes no difference whether attendance times are recorded at time recording terminals or in the Attendances infotype (2002).
Time evaluation with planned times (9): These employees have only the deviations from their work schedule recorded for them. The employeesu2019 planned working times from their personal work schedule are used as the basis for time evaluation.
Time Management Status for processing time data in Time Evaluation without passing on time wage types formed there to Payroll
Time evaluation without integration with Payroll (7): You use this status to run time evaluation to handle special time accounts u2013 to accrue absence quotas, for example. It makes no difference whether all of the employeesu2019 actual times are recorded or only the deviations from the work schedule.
The system stores the results of this time evaluation run in cluster B2, which enables you to run reports on the data, for example. The results are not passed on to Payroll. The time data processing part of Payroll treats the employees as if they had the time management status No time evaluation (0).
External services (8): Status for external employees. It makes no difference whether all of the employeesu2019 actual times are recorded or only the deviations from the work schedule. The results of time evaluation are transferred to Materials Management (MM-SRV), and are not passed on to
and also check the feature TMSTA once in peo3
Edited by: Sikindar on Nov 17, 2008 3:01 PM -
Time management status "0"and "7"
Hi Team,
Kindly can you let me if we can use Time management status "7" when there is no TE instead of "0"?
My client is using "7" as Time management status and they don't have TE.
Regards,
VimalHi Vimal,
The Time Management Status plays an importnat and effets as to how u want the time Process in ur company.
Time Management Staus 0 : No time Evaluation which means no PT60 or RPTIME00 all u have to do is run The Quotas with the report RPTQTA00 if any.
And Time Management 7 is Time Evaluation without Payroll integration.But u said that u dont have Time Evaluation then why 7? It should be 0 but the other possibilty to have Time Management Status 7 is you can use RPTIME00 with schema TQTA for generation of time quota and that is without time evaluation.
So its better to have TMSTA 7 as u can use RPTQTA00 and RPTIME00 with TQTA both for generation of time quota.
Regards
Swati -
Difference between Time Management and Time Evaluation
Hello
Is there any Difference between Time Management and Time Evaluation? if yes, then what is it? I guess there's no diff, time evaluation is a report..
please advice
ThanksHi Charlene,
Time management can be divided into 3 steps
1.Time Recording
2.Time Evaluation
3. Planning
Time Evaluation :
The recorded time data is grouped and converted to wage types which can be used by payroll for compensation.SAP provides a time evaluation program RPTIME00 for this purpose.
Standard schemas TM00 and TM04 are used for evaluation of time data got from positive and negative time recording approaches.
time evaluation program RPTIME00 also calculates accrual and entitlement for employees.
Regards,
Swapnil -
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 -
Session management in URL reporting
Hi,
I have problems with the session management while calling reports from our own web-app.
We host our reports (.rpt) on a CrystalReportsServer 2008 running on a Tomcat. This CRS is configured with 20 CAL (ConcurrentAccess Licences).
On the other side, our Intranet, running on another Tomcat.
Our Intranet provides UI allowing users to determine the parameters that will be passed to reports. For some reasons we do not want to use InfoView now but keep using our own UI to call reports. The idea was then to call them through OpenDocument (or viewrpt.cwr) passing parameters in the URL.
In our Web-app, I authenticate the user to the CRS, retrieving an IEnterpriseSession. I then get a token for my calls to OpenDoc. But then, each time I call OpenDoc, a new CAL is picked out. Even if I logoff, only one CAL (the one belonging to my IEnterpriseSession) is given back.
As our users often open and close lots of reports, we run very quickly out of CAL, although the reports are now closed and the user gone.
I thought using a token would have allowed us to consume only 1 CAL per user, using the same CAL for the different calls.
Is my reasoning wrong or is it my code..?When creating the token , use "CreateWCAtoken" function this will not increse the session count in CRS.
You might be using CreateLogonToken function
Arguments passed to these two functions are same. -
Time management infotype?
Hi all,
I am working on a interface between time recording machine and R/3.
I wanna know the time event infotype and in which table is the data stored .
Regards
ArunHi Arun,
The data will be stored in the tables PA2002 & PA2001.
External time data is stored in the interface tables PTEX2000 and PTEXDIR by the data transfer. In addition, the data is read by the report RPTEXTPT (Transfer External Data -> Time Management) from the file PTEX2000 and stored as attendances/absences in the Attendances (2002) or Absences (2001) infotypes.
Hope this helps you.
Cheers,
JS -
Intel Service Manager's Crash Report
I receive the Intel Service Manager's Crash Report several times whenever any user logs onto my laptop. I disabled the Windows Event Log as a short term fix, but would like to know how to properly correct this problem????
Satellite S855-S5265
Downloads here
We shouldn't expect Peter to return until Monday, Sehr.
Does the message look like my attachment?
Check the date and time on your computer. Sometimes that causes it.
Anything unusual showing in Device Manager (devmgmt.msc)?
Can't hurt to reinstall the core software..
Intel Chipset SW Installation Utility
Intel Display Driver
AMD Display Driver
And this..
Intel Management Engine Interface
I do not have a systems disk, or any other disks for this laptop.
You should certainly create recovery discs and a Windows 7 repair disc at minimum. For the former, see the section Creating recovery media, which begins on p. 65 of the User's Guide.
Satellite/Satellite Pro L800/S800 Series User’s Guide
And see..
Create a system repair disc
We create an image of our production-machines' hard drives every single night. If you cannot afford to rebuild your computer from scratch, you should also back up the whole drive periodically.
-Jerry
Attachments:
CrashReport.jpg 38 KB -
Hi everyone....
I just have some special cases in Time Management:
1-i want to count the absence days in different way as follows: if the start date and the end date of the
absence (of annual leave type only) is exactly before and after holiday, then the holiday should be included
in the count too, for example:
the employee took an annual leave from 30-05 to 01-06 and we defined 31-05 as a holiday, then this absence
should be three days not only two.
so can this be done without using schema.
2-our customer have many projects to work in, and the attendance should be recorded manually, the case is
that when the attendance of the employee recorded it should have something like comment to be able to know
what project the employee attended, i handled this by using InfoType 2002 and made attendance types, one
for each project, but this means that when some project closes or when a new project assigned to the company
this means that they should come back to me as a support, so doese anyone have an extra idea.
3-the last thing i want is to have some standard report that can use the time statement i made like pt60,
to be available for admins to use anytime as pt60 uses it only in time evaluation, and if anyone have some
good links or books for making time statements please send.
Regards;
EvanQuestion no.1...
It will be standard behaviuor of the system that it will deduct the sadwich holidays. Please check the calendar days in 2001. if its not so then let me know.
Question no.2....
Ask the ABAPER to Apend the structure of IT2001 and give the text box there. Through this you will be able to enter the text against each holiday for all leave types. If so then make it mandatory field otherwise remain as optional.
Question no.3....
You have two options.
1. Make a ABAPED report for view purpose.
2. Give them the authorization to view the cluster table report. Run t-code se38 and check this report RPCLSTB2. It will contain all data regarding time management of employee.
Maybe you are looking for
-
I am stuck in a photo album with no button to go back! If I press the home button I get back to the main iPhone screen, when I go back to the Facebook app, it brings me straight back to the photo again with no option to et put of there?!
-
Can i installed ios.6 on iphone 3gs
can i installed ios.6 on iphone 3gs
-
No information available.
Hi, when I enter channel no 507 to see whats on BT Sport, all I get is 'no information available'. Anyone know why this is suddenly happening? Been fine foir the sevferal weeks since I first started receiving it.
-
Context Menu "Send To" mail text
Hi, I am trying to explore the options available with in context menu -> send to mail option inside km document explorer view. The requirement is to change the text displayed in the form which is opened when users selects context menu -> send to opti
-
Hi, I am trying to build a two-node RAC on windows 2003. I have two nodes, RAC1 and RAC2. I have completed the network configuration and now intend to implement shared storage. On RAC1, i have two hard disks. Is it possible if I create 5 logial parti