HR Function Module for Working Days
Hi gurus,
Plz help me with a function module to calculate working days for an employee within a given date range.
Hi Sudipa,
Try the FM DATE_CHECK_WORKINGDAY.
Check this one for sample:
Function Module which calculates employee's Working days per year
Regards,
Chandra Sekhar
Similar Messages
-
Function Module for Date/ Time difference in Working Days
Hi all,
Are there any function modules which will calculate the difference between a date AND time, but in working days?
I can use the FIMA_DAYS_BETWEEN_TWO_DATES_2 FM for the dates, but I need to include times in this as well.
This is for situations where the 'starting date' is a non-working day, and the 'end date' is a working day. In this situation I need to take all the hours and minutes into account, which happened on the working day. To give an example -
Start date: 04.07.2010 (Sunday - Non working day)
Start time: 21:12:36
End date: 05.07.2010 (Monday - Working day)
End time: 04:47:24
I realise there is a Time option in this function module, but when I test it, it doesn't seem to be returning the desired results (returns 0 for days and time). I am using '5' as the I_STGMETH and 'GB' as the I_SKALID.
I need a calcuation which will return the time, post midnight on the working day - in this example, 4 hours, 47 minutes (seconds are optional!).
Can anyone help? - can I still use FIMA_DAYS_BETWEEN_TWO_DATES_2 but with different parameters?
Thanks
Mischa
Edited by: Mischa Gulseven on Jul 20, 2010 10:40 AMHi,
Thanks but this FM does not seem to account for working days.
For example, if I use:
DATE1 04.07.2010 (non working day)
TIME1 04:00:00
DATE2 05.07.2010 (working day)
TIME2 21:00:00
It will give the following results -
DATEDIFF 1
TIMEDIFF 17
EARLIEST 1
I don't want to account for the non-working day so the result I actually want would be to calculate from midnight on 05.07 to 21:00 on 05.07 which should be 21 hours.
I suspect I probably need to include the STGMETH and the factory calendar somewhere in the FM?
Does such a FM exist, or could anyone help me with some ABAP for this?
thanks
Mischa -
Function Module not working for old Role
Dears
Function Module not working for old Role
Function Module: /VIRSA/BAPI_AE_USERS_FOR_ROLES
Before EHP4 upgrade this functional module working fine, but after updated users are not visible.
We have chekced if the users are assigned directly users are visible but indirect (Position Based) assignment users are not apprearing.
Pl check the fucntion module with given roles below and identify the root cause,
EP_TRVL_ALL_CAB - Old Role
EP_TRN_TRVL_DRGC_V2 - New Role
Regards
Krishna Mohan CH
9704500717Krishna,
I do not think this BAPI is meant to be called by anyone but the application using it, and its functionality may therefore change without notice.
What are you trying to achieve? Maybe there's a better way to do that...
Frank. -
Function Module for data retrival for work order clearence (WCA)
Hi All ,
Function Module for data retrival for work order clearence (WCA) for a particular Planning plant and (WCD's).
Thanks.Hi Anne,
BAPI_PRODORD_GET_DETAIL
BAPI_PRODORD_GET_LIST
You can find further FM in Function Group COPRINT and CODR or take F4 on CO* in Function Group
These will serve your purpose.
Cheerz.
Ram -
Function modules for Individual Work maintenance
Hi all,
We're planning to use the functionality of individual work for our customer. And we're planning to use custom screens rather than GUI for creation, maintenance, deletion etc - as GUI screens seem to have some bugs (especially when you try to delete an individual from a student on PIQST00)
So are there any function modules (RFC if possible) related to individual works (for creation, maintenance, deletion etc)? I looked up some function modules but they didn't turn out to be as "functional" as we expected considering our requirements.
If no function module exists to meet our requirements, could you suggest any functional modules for its infotypes (for same purposes)?
Thanks in advanceHello Rob,
Thanks for the reply!
Well I already checked those functions with starting HRIQ_INDIV. However none of them seemed to work for me. For instance, HRIQ_INDIVWORK_MAINTAIN. You cannot maintain (neither create ) individual work or anticipated submit date infotypes with that function I guess. Besides that, when I want to test the function and enter some import parameters it needs, let's say creating individual work - therefore opera = inse -, it directs me to Individual Work maintenance screen in module catalog in GUI with an pop-up error!
I need a function like HRIQ_RFC_MODULE_CREATE for instance when you are able to fill all infotypes related to a study modue... To give another example, I can say it can be HRIQ_ADV_ADVASSGNMT_CREATE_RFC when you are able to assign an advisor to a student with all the info needed just like you would do in PIQST00.
However, the function modules related to individual work are not as functional as the function modules I named above.
Should I go for infotype function modules? -
Trying to find Function modul for requirement capacity in work center
Hi Colleagues,
I have tried to find a function modul: Import - Work center , Export - requirement capacity.
but havn't succeed with.
I will be glad for any help.
tnx & best regardsI need a FM that export the requirement capacity of a Work center.
Report CM01 has the same functionallity, however, by debugging it I coudn't find any useful function, morever, I have found a thread in the forum with the same issue but it wasn't helpful.
an example for my needs is as followed:
Function: CAPACITY_REQUIREMENT_FOR_WORK_CENTER
IMPORT:
1. Work Center = MG1602
2. Plant = 1000
3.date from = 01.04.2011
4. date to = 01.05.2011
EXPORT:
1. Capacity Requirment (Total) = 240 [Hours]
2. Capacity Requirment (period) = 22 [hours] -
Function Module for some sBDOC does not work on
Hi Experts,
We have transported on QA landscape sBDOC definition. For sBDOC CNBCCPCUS602, CNBCCPCUS603, CNBCCPCUS604 function module seems to be not the right one, so no message of this BDOC are creted when a site extract is done. Error on smohqueue says: "Could not determine function module for processing AC messages".
Have You encountered a problem like this?
BR
RobertoHi All,
We resolved the problem re-generating CDB pricing condition table using report CND_MAST_GEN_TRANSFER_OBJECTS.
BR
Roberto -
Function Module for Start time and End time
Hi Experts,
I need a function module for getting particular Work schedule rule start time and endtime and further details by passing personnel number and day.
Thanks in advance.
SunilFYI - https://forums.sdn.sap.com/click.jspa?searchID=-1&messageID=5338428
Thanks,
SK -
How to create the INBOUND Function Module for INBOUND IDOCs
Hi Friends,
Can any Suggest me How to proceed to Create an INBOUND Function Module for Processing the INBOUND IDOCS
which are recieved from XI Server ?
I am working in SAP-ISU
Here i will recieve the INBOUND IDOCs for the Meter Reading Orders.
We have a Standard INBOUND FUNCTION MODULE
IDOC_INPUT_ISU_MR_UPLOAD
which Uploads the Meter Reading Results.
I copied the Same function Module into ZIDOC_INPUT_
and working on it.
Can any one suggest me, whether i am going in correct way or not.
In IDOC_INPUT_ISU_MR_UPLOAD Inbound fun module,
BAPI_MTRREADDOC_UPLOAD is used to Update or Insert the Meter Reading Results,
My requirment is to Insert and Update the Meter Reading Orders which are Inbounded from XI.
Can I Use the Same BAPI
BAPI_MTRREADDOC_UPLOAD
to Update the below fields,
EABL-SERNR
EABL-ZWNUMMER
EABLG-ABLESGR
EABL-V_ZWSTAND
EABL-N_ZWSTAND
EABL-ABLHINW
EABL-ZSKIPC
EABL-ADAT
EABL-ATIMTATS
EABL-ADATTATS
EABL-ATIM
EABL-ZMESSAGE
EABL-ABLESER(Meter reader number)
Kindly Suggest me,
Thanks in Advance,
GaneshHello Ganesh
I think you are going completely astray with you z-function module for IDoc processing.
If you look at TABLES parameter METERREADINGRESULTS (type BAPIEABLU ) of BAPI_MTRREADDOC_UPLOAD you will find many of the requested fields already:
EABL-SERNR => BAPIEABLU-SERIALNO
EABL-ZWNUMMER =>REGISTER
EABLG-ABLESGR
EABL-V_ZWSTAND
EABL-N_ZWSTAND
EABL-ABLHINW
EABL-ZSKIPC
EABL-ADAT
EABL-ATIMTATS => ACTUALMRTIME
EABL-ADATTATS => ACTUALMRDATE
EABL-ATIM
EABL-ZMESSAGE
EABL-ABLESER(Meter reader number)
Field EABL-ZMESSAGE appears to be custom field (at least I cannot find it on ECC 6.0). If this field was added using include CI_EABL then you probably can get these values into the BAPI using the EXTENSIONIN parameter.
Check routine CHECK_UPLOADRECORDS in the BAPI which allows two extension structures:
- BAPI_TE_EABL
- BAPI_TE_EOSB
Not surprisingly BAPI_TE_EABL contains the include CI_EABL.
Regards
Uwe -
Function modules for the following
Hi,
I want to know the function modules for the following purposes.
1) Check whether a date is valid or not
2) Calculate the no of days between two dates.
Expecting an early response.
Thanks n Regards,
AmitHi,
PARAMETERS: p_list LIKE t009b-bumon AS LISTBOX
VISIBLE LENGTH 11 OBLIGATORY ,
p_list1 LIKE t009b-bdatj OBLIGATORY.
SELECTION-SCREEN POSITION POS_HIGH.
PARAMETERS: p_list2 LIKE t009b-bumon AS LISTBOX
VISIBLE LENGTH 11 OBLIGATORY,
p_list3 LIKE t009b-bdatj OBLIGATORY.
Calling Function Module for calculating no of days between the
selected period
CALL FUNCTION 'NUMBER_OF_DAYS_PER_MONTH_GET'
EXPORTING
par_month = p_list
par_year = p_list1
IMPORTING
par_days = ws_n_days.
CALL FUNCTION 'NUMBER_OF_DAYS_PER_MONTH_GET'
EXPORTING
par_month = p_list2
par_year = p_list3
IMPORTING
par_days = ws_n_days1.
For Concatenating the month and year into the date format
CONCATENATE p_list1 p_list ws_i INTO ws_c_date1.
CONCATENATE p_list3 p_list2 ws_n_days1 INTO ws_c_date2.
date = ws_c_date1 - ws_c_date2.
In the above sample code the selection screen has month and year as input.
Also check this link
http://www.sapdevelopment.co.uk/tips/date/datehome.htm
Check FM
<b>RP_CALC_DATE_IN_INTERVAL</b> Add/subtract years/months/days from a date
<b>SD_DATETIME_DIFFERENCE</b> Give the difference in Days and Time for 2 dates
<b>Also for checking valid date:</b>
U can specify the date field as
Select-options: s_date like likp-date(similar to ur requirement)
This itself ceck for the valid date no seperate validation needed.
Thanks & Regards,
Judith. -
Any function module for getting fiscal year week numbers
can any one provide me function module for getting fiscal year week numbers ? if no function module please let me know work around.
Thanks!
Lakshmikandhhi,
Use FM <b>'DATE_GET_WEEK'</b>...
parameter D1 LIKE SCAL-DATE.
Data w like scal-week.
CALL FUNCTION <b>'DATE_GET_WEEK'</b>
EXPORTING
date = D1
IMPORTING
WEEK = W
EXCEPTIONS
DATE_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.
write W+4(2).
Regards,
Santosh -
Function module for sundays in a month
hai all,
i need a function module for calculating noof sundays in a monthHi Satya,
Please check this code which is checked for syntax also. Just copy and paste the same in abap editor and check the output.
Calculation of number of sundays ****
DAta : month1(2) type c,
week1 type i,
date1 type sy-datum,
val1 type sy-datum,
day1 type SCAL-INDICATOR,
no_sundays type i.
week1 = 5.
date1 = '20060502'.
*- Function Module to fetch the Last day of the Month
CALL FUNCTION 'LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = date1
IMPORTING
LAST_DAY_OF_MONTH = VAL1.
*- Function Module to get the day of the week
CALL FUNCTION 'DATE_COMPUTE_DAY'
EXPORTING
DATE = VAL1
IMPORTING
DAY = DAY1.
*- Calculation of number of sundays
month1 = val1+6(2).
write : / month1.
if month1 = 31.
if DAY1 <= 2 or DAY1 = 7.
no_sundays = week1.
else.
no_sundays = week1 - 1.
endif.
elseif month1 = 30.
if DAY1 = 1 or DAY1 = 7.
no_sundays = week1.
else.
no_sundays = week1 - 1.
endif.
elseif month1 = 29.
if DAY1 = 7.
no_sundays = week1.
else.
no_sundays = week1 - 1.
endif.
elseif month1 = 28.
no_sundays = 4.
endif.
write : / no_sundays.
If found helpful, please do reward. -
Function Module for sending an Attachment
Not able to find the Function Module for sending an Attachment to the email ids.
Please help.Hi bala,
1. There is some trick involved in attachment
in the binary files.
2. I have made a program (and it works fantastic)
ONLY 6 LINES FOR EMAILING
BELIEVE ME
ITS A FANTASTIC PROGRAM.
IT WILL WORK LIKE OUTLOOK EXPRESS !
3. The user is provided with
a) file name
b) email address to send mail
and it sends ANY FILE (.xls,.pdf .xyz..)
Instantaneously !
4. Make two things first :
1. Include with the name : ZAMI_INCLFOR_MAIL
2. Report with the name : ZAM_TEMP147 (any name will do)
3. Activate both and execute (2)
4. After providing filename, email adress
5. Code for Include :
10.08.2005 Amit M - Created
Include For Mail (First Req F16)
Modification Log
Data
DATA: docdata LIKE sodocchgi1,
objpack LIKE sopcklsti1 OCCURS 1 WITH HEADER LINE,
objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE,
objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objhex LIKE solix OCCURS 10 WITH HEADER LINE,
reclist LIKE somlreci1 OCCURS 1 WITH HEADER LINE.
DATA: tab_lines TYPE i,
doc_size TYPE i,
att_type LIKE soodk-objtp.
DATA: listobject LIKE abaplist OCCURS 1 WITH HEADER LINE.
FORM
FORM ml_customize USING objname objdesc.
Clear Variables
CLEAR docdata.
REFRESH objpack.
CLEAR objpack.
REFRESH objhead.
REFRESH objtxt.
CLEAR objtxt.
REFRESH objbin.
CLEAR objbin.
REFRESH objhex.
CLEAR objhex.
REFRESH reclist.
CLEAR reclist.
REFRESH listobject.
CLEAR listobject.
CLEAR tab_lines.
CLEAR doc_size.
CLEAR att_type.
Set Variables
docdata-obj_name = objname.
docdata-obj_descr = objdesc.
ENDFORM. "ml_customize
FORM
FORM ml_addrecp USING preceiver prec_type.
CLEAR reclist.
reclist-receiver = preceiver.
reclist-rec_type = prec_type.
APPEND reclist.
ENDFORM. "ml_customize
FORM
FORM ml_addtxt USING ptxt.
CLEAR objtxt.
objtxt = ptxt.
APPEND objtxt.
ENDFORM. "ml_customize
FORM
FORM ml_prepare USING bypassmemory whatatt_type whatname.
IF bypassmemory = ''.
Fetch List From Memory
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = listobject
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'LIST_FROM_MEMORY'.
ENDIF.
CALL FUNCTION 'TABLE_COMPRESS'
IMPORTING
COMPRESSED_SIZE =
TABLES
in = listobject
out = objbin
EXCEPTIONS
OTHERS = 1
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'TABLE_COMPRESS'.
ENDIF.
ENDIF.
Header Data
Already Done Thru FM
Main Text
Already Done Thru FM
Packing Info For Text Data
DESCRIBE TABLE objtxt LINES tab_lines.
READ TABLE objtxt INDEX tab_lines.
docdata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'TXT'.
APPEND objpack.
Packing Info Attachment
att_type = whatatt_type..
DESCRIBE TABLE objbin LINES tab_lines.
READ TABLE objbin INDEX tab_lines.
objpack-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objbin ).
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = att_type.
objpack-obj_name = 'ATTACHMENT'.
objpack-obj_descr = whatname.
APPEND objpack.
Receiver List
Already done thru fm
ENDFORM. "ml_prepare
FORM
FORM ml_dosend.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
put_in_outbox = 'X'
commit_work = 'X' "used from rel. 6.10
IMPORTING
SENT_TO_ALL =
NEW_OBJECT_ID =
TABLES
packing_list = objpack
object_header = objhead
contents_bin = objbin
contents_txt = objtxt
CONTENTS_HEX = objhex
OBJECT_PARA =
object_parb =
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8
IF sy-subrc <> 0.
MESSAGE ID 'SO' TYPE 'S' NUMBER '023'
WITH docdata-obj_name.
ENDIF.
ENDFORM. "ml_customize
FORM
FORM ml_spooltopdf USING whatspoolid.
DATA : pdf LIKE tline OCCURS 0 WITH HEADER LINE.
Call Function
CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = whatspoolid
TABLES
pdf = pdf
EXCEPTIONS
err_no_otf_spooljob = 1
OTHERS = 12.
Convert
PERFORM doconv TABLES pdf objbin.
ENDFORM. "ml_spooltopdf
FORM
FORM doconv TABLES
mypdf STRUCTURE tline
outbin STRUCTURE solisti1.
Data
DATA : pos TYPE i.
DATA : len TYPE i.
Loop And Put Data
LOOP AT mypdf.
pos = 255 - len.
IF pos > 134. "length of pdf_table
pos = 134.
ENDIF.
outbin+len = mypdf(pos).
len = len + pos.
IF len = 255. "length of out (contents_bin)
APPEND outbin.
CLEAR: outbin, len.
IF pos < 134.
outbin = mypdf+pos.
len = 134 - pos.
ENDIF.
ENDIF.
ENDLOOP.
IF len > 0.
APPEND outbin.
ENDIF.
ENDFORM. "doconv
CODE FOR PROGRAM
5.
REPORT zam_temp147 .
INCLUDE zami_inclfor_mail.
DATA
DATA : itab LIKE tline OCCURS 0 WITH HEADER LINE.
DATA : file_name TYPE string.
data : path like PCFILE-PATH.
data : extension(5) type c.
data : name(100) type c.
SELECTION SCREEN
PARAMETERS : receiver TYPE somlreci1-receiver lower case.
PARAMETERS : p_file LIKE rlgrap-filename
OBLIGATORY.
AT SELECTION SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CLEAR p_file.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file.
START-OF-SELECTION
START-OF-SELECTION.
PERFORM ml_customize USING 'Tst' 'Testing'.
PERFORM ml_addrecp USING receiver 'U'.
PERFORM upl.
PERFORM doconv TABLES itab objbin.
PERFORM ml_prepare USING 'X' extension name.
PERFORM ml_dosend.
SUBMIT rsconn01
WITH mode EQ 'INT'
AND RETURN.
FORM
FORM upl.
file_name = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = file_name
filetype = 'BIN'
TABLES
data_tab = itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
path = file_name.
CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
EXPORTING
complete_filename = path
CHECK_DOS_FORMAT =
IMPORTING
DRIVE =
EXTENSION = extension
NAME = name
NAME_WITH_EXT =
PATH =
EXCEPTIONS
INVALID_DRIVE = 1
INVALID_EXTENSION = 2
INVALID_NAME = 3
INVALID_PATH = 4
OTHERS = 5
ENDFORM. "upl
regards,
amit m. -
Function module for converting weight unit to another unit.
What is the function module for converting weight unit to another unit.
I want to convert LB to KG.
Tried with fm UNIT_CONVERSION_SIMPLE.
INPUT 100
NO_TYPE_CHECK
ROUND_SIGN X
UNIT_IN LB
UNIT_OUT KG
But there is no output.
Can some one help.The trick here is we need decalre input output with non-character data type like VBPLK-BRGEW.
We can test using normal SE37.
I tested and this program worked fine:
data: UNIT_IN LIKE T006-MSEHI,
UNIT_OUT LIKE T006-MSEHI,
output LIKE VBPLK-BRGEW,
input LIKE VBPLK-BRGEW.
input = 10.
CALL FUNCTION 'UNIT_CONVERSION_SIMPLE'
EXPORTING
INPUT = INPUT
UNIT_IN = 'LB' "UNIT_IN
UNIT_OUT = 'KG' "UNIT_OUT
IMPORTING
OUTPUT = OUTPUT.
write: output. -
Function modules for table operations
Hi!
I found the module "rfc_get_table_entries", can s.o. tell me some other standard function modules to work with database information?
rfc_get_table_entries returns a concatenated Database line, it would be better for me to get a table with the correct structure.
With best regards
Björn K.Björn,
how about RFC_READ_TABLE? you'll receive the structure in FIELDS and the content in DATA.
if you know the fields you want to receive, you can add them in the FIELDS table as input parameter.
kr, achim
Maybe you are looking for
-
Just got a second hand iPhone 4s and tried to connect to iTunes on laptop running windows 8.1 does not detect iPhone, iPad or iPod. Can any help please? iPhone is version 7.1 and running latest itunes
-
Hi everyone, I have a file which I'm interested in extracting information from. Here is a snippet: CGCNNNNGTAGTC TAGTCNN ... my goal is to create a regex which extracts out everything beyond the N (on the first line), along with anything on the next
-
Old PPC games on macbook?
I want to play monkey island so bad and found that it is offered as freeware. Actually the original as well as the second one. I want to play them. Bad. However, the binary whatever is in PPC. It won't load and says this application isn't supported f
-
IDVD Status DVD Capacity issue
The DVD Capacity indicates 2.6GB & 77 min. when I start the burn process to create .img file. When it finishes (& usually fails) the DVD capacity indicates 3.6GB and 77 minutes. I've never had this problem before. My iMovie consists of 786 jpg photos
-
hi here is small snippet of my code that generates the XML in oracle i want to add the exception in the code. how to do so? XMLElement("PersonalDetails", XMLForest(NVL(to_char(to_date(a.DOB,'YYYYMMDD'),'DD-MM-YYYY'),' ')