procedure insert_table
as
v_revise_date varchar2(10);--
v_deptid number;
v_group_no varchar2(4);--
v_rc_no varchar2(4);--
v_rc_count number;
v_rc_date varchar2(10);
begin
v_rc_date :=substr(sysdate,0,4)||substr(sysdate,6,2);
v_revise_date :=to_char((sysdate),'yyyy/MM/dd');
DECLARE
CURSOR O_OUR1 IS-- 得到所有符合條件的所有記錄然後保存在一個遊標中
select emp_no,dept_no,revise_date from hr_basicinfo where revise_date=v_revise_date and status='1';
begin
for tim in o_our1 --循環將數據提取出來 判斷條件的記錄就添加到另外一個表中
loop
select count(rownum) into v_rc_count from HRA_EMP_ATTEND_DAY where YYYYMM=v_rc_date and EMP_NO =tim.emp_no;
if(v_rc_count=0)then
insert into HRA_EMP_ATTEND_DAY (YYYYMM,EMP_NO,GROUP_NO,D01,D02,D03,D04,D05,revisor,revise_date)
values(v_rc_date,tim.emp_no,v_group_no,v_rc_no,v_rc_no,v_rc_no,v_rc_no,v_rc_no,'hrerp',sysdate);
end if ;
end if;
end loop ;
end;
end;