Vous êtes sur la page 1sur 2

Creating timecard

1. A timecard is a combination of DAYS. Each DAY will be one Row in a table. For Every day that you need to enter time (e.g. Saturday Sunday will not need a time entry being a holiday) you need a DETAIL type row also. And, for each DETAIL record that has to go into an element or project for costing or payroll purpose, we need an ATTRIBUTE also.
2. TYPE: MEASURE ( Number of hours to be put in that particular day) or RANGE (For period like week or day). SCOPE: TIMECARD, DAY, DETAIL or APPLICATION_PERIOD

3.

Now, if you see a typical timecard, this is how it looks (Use the hierarchical Query below):

4.

TIMECARD (12/1/2008 - 12/7/2008) TYPE: RANGE |_ DAY (12/1/2008 12/1/2008) TYPE: RANGE |_ DETAIL (12/1/2008): 8 HRS (may have attributes)

TYPE:MEASURE |_ DAY (12/2/2008 12/2/2008) |_ DETAIL (12/2/2008): 8 HRS |_ DAY (12/3/2008 12/3/2008) |_ DETAIL (12/3/2008): 8 HRS |_ DAY (12/4/2008 12/4/2008) |_ DETAIL (12/4/2008): 8 HRS |_ DAY (12/5/2008 12/5/2008) |_ DETAIL (12/5/2008): 8 HRS |_ DAY (12/6/2008 12/6/2008) |_ DAY (12/7/2008 12/7/2008)

5. SELECT htbb.time_building_block_id, htbb.TYPE, htbb.measure, htbb.unit_of_measure,


htbb.start_time, htbb.stop_time,htbb.parent_building_block_id, N parent_is_new, htbb.SCOPE,htbb.object_version_number, htbb.approval_status,htbb.resource_id, htbb.resource_type, htbb.approval_style_id,htbb.date_from, htbb.date_to, htbb.comment_text,htbb.parent_building_block_ovn, N NEW, N changed,htbb.application_set_id, htbb.translation_display_key FROM apps.hxc_time_building_blocks htbb START WITH ( htbb.time_building_block_id in (6848088) AND htbb.object_version_number in (1 ) )CONNECT BY PRIOR htbb.time_building_block_id = htbb. parent_building_block_id AND PRIOR htbb.object_version_number = htbb.parent_building_block_ovn ORDER BY htbb.time_building_block_id ASC
6. hxc_timestore_deposit.create_timecard_bb Create a Timecard building block (only timecard, no days, or details) Here are the parameters it takes ( p_start_time => to_date(01-DEC-2008 00:00:00,DD-MON-YYYY HH24:MI:SS) , p_stop_time => to_date(07-DEC-2008 23:59:59,DD-MON-YYYY HH24:MI:SS), p_resource_id => emp.person_id , p_comment_text => Automated TimeCard: DEC08, p_approval_style_id => 41, This is your workflow approval style, default to AUTO APPROVE p_app_blocks => l_tbl_timecard_info, p_time_building_block_id => l_tc_bb_id returns the id of TC Building block );

7.

hxc_timestore_deposit.create_day_bb Creates a DAY building block (only DAY no details) Here are the parameters it takes ( p_day => l_start_date,

p_parent_building_block_id => l_tc_bb_id, p_comment_text => Automated TimeCard: DEC08, p_app_blocks => l_tbl_timecard_info, p_time_building_block_id => l_day_bb_id );

8.

hxc_timestore_deposit.create_detail_bb Creates a DETAIL building block, in next step we have to attach the attribute to this DETAIL Here are the parameters it takes ( p_type => MEASURE, p_measure => 8, Number of Hours p_parent_building_block_id => l_day_bb_id, p_comment_text => Automated TimeCard: DEC08, p_app_blocks => l_tbl_timecard_info, p_app_attributes => l_tbl_attributes_info, p_time_building_block_id => l_detail_bb_st_id ); hxc_timestore_deposit.create_attribute ( p_building_block_id=> l_detail_bb_st_id, p_attribute_name=> Dummy Element Context, p_attribute_value=> ELEMENT 60110, This is the Accrual PTO Element we want to update through this API. p_app_attributes=> l_tbl_attributes_info);

9.

HXC_TIMESTORE_DEPOSIT.EXECUTE_DEPOSIT_PROCESS This is the Submission Call. This process will submit the timecard, days and details with attributes. Timecard will stay in SUBMITTED State until approved via Manual or AUTO Approve process. ( p_validate => FALSE, p_app_blocks => l_tbl_timecard_info, p_app_attributes => l_tbl_attributes_info, p_messages => l_tbl_messages, p_mode => SUBMIT, p_deposit_process => OTL Deposit Process, p_retrieval_process => BEE Retrieval Process, p_timecard_id => l_new_timecard_id, p_timecard_ovn => l_new_timecard_ovn );

Vous aimerez peut-être aussi