Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 4

begin

dbms_scheduler.create_program (
program_name => 'insert_prog',
program_type => 'plsql_block',
program_action => 'insert into ems.clsdy_bor (tanggal,kelas,pasien)
select trunc(sysdate) tanggal,kode kelas,terisi pasien from
rsp.bed_ocr;
commit;',
enabled => true);
end;

truncate table ems.clsdy_bor;

begin
dbms_scheduler.create_schedule (
schedule_name => 'insert_schr',
start_date => sysdate,
repeat_interval => 'freq=secondly; interval=60',
enabled => true);
end;

begin
dbms_scheduler.create_job (
job_name => 'insert_bor2',
program_name => 'insert_prog',
schedule_name => 'insert_schr');
end;

create or replace procedure bor_schedule as


begin
delete ems.clsdy_bor
where tanggal=trunc(sysdate);
commit;
insert into ems.clsdy_bor (tanggal,kelas,pasien)
select tanggal,kelas,pasien from rsp.bed_insert;
commit;
end;

/*** auto insert bor


begin
dbms_scheduler.create_job (
job_name => 'insert_bor',
job_type => 'plsql_block',
job_action => 'delete ems.clsdy_bor
where tanggal=trunc(sysdate);
commit;
insert into ems.clsdy_bor (tanggal,kelas,pasien)
select tanggal,kelas,pasien from rsp.bed_insert;
commit;',
start_date => TO_DATE('01-03-2021 06:00:00','DD-MM-YYYY HH24:MI:SS'),
repeat_interval => 'SYSTIMESTAMP + INTERVAL ''10'' MINUTE',
--start_date => SYSTIMESTAMP,
--repeat_interval => 'freq=minutely; interval=10',
enabled => true);
end;
exec dbms_scheduler.enable('insert_bor');
exec dbms_scheduler.disable('insert_bor');
exec dbms_scheduler.drop_job('insert_bor');

/*** auto update/refresh revenue on the first day of every month


exec dbms_scheduler.drop_job('insert_unit');

begin
dbms_scheduler.create_job (
job_name => 'insert_unit',
job_type => 'plsql_block',
job_action => 'begin
delete eis.monitoring_revenue;
commit;
insert into eis.monitoring_revenue
(group_unit,pelayanan,bulan_lalu,bulan_ini)
select new_group,new_alias,0,0 from tory.list_unit;
commit;
end;',
start_date => SYSTIMESTAMP,
repeat_interval => 'freq=monthly; bymonthday=1',
enabled => true);
end;

--exec dbms_scheduler.run_job('insert_unit');

/*** auto update revenue by unit


exec dbms_scheduler.drop_job('monitoring_unit');

begin
dbms_scheduler.create_job (
job_name => 'monitoring_unit',
job_type => 'plsql_block',
job_action => 'declare
cursor p is
select old_id,bln_lalu
from tory.unit_income_lastmonth;
cursor y is
select new_id,bln_ini
from tory.unit_income_thismonth;
begin
for x in p loop
update eis.monitoring_revenue
set bulan_lalu=x.bln_lalu
where group_unit=x.old_id;
commit;
end loop;
for z in y loop
update eis.monitoring_revenue
set bulan_ini=z.bln_ini
where group_unit=z.new_id;
commit;
end loop;
end;',
start_date => SYSTIMESTAMP,
repeat_interval => 'freq=MINUTELY;interval=10',
enabled => true);
end;
--exec dbms_scheduler.run_job('monitoring_unit');

/*** auto insert topten customer on the first day of every month
exec dbms_scheduler.drop_job('insert_topten');
begin
dbms_scheduler.create_job (
job_name => 'insert_topten',
job_type => 'plsql_block',
job_action => 'begin
delete eis.topten_revenue;
commit;
insert into eis.topten_revenue
(customer,nama_customer,bulan_lalu,bulan_ini)
select pelanggan,nama_pelanggan,0 as lalu, 0 as ini
from tory.customer_income_topten;
commit;
end;',
start_date => SYSTIMESTAMP,
repeat_interval => 'freq=monthly; bymonthday=1',
enabled => true);
end;

--exec dbms_scheduler.run_job('insert_topten');

/*** auto update topten revenue by customer


exec dbms_scheduler.drop_job('update_topten');
begin
dbms_scheduler.create_job (
job_name => 'update_topten',
job_type => 'plsql_block',
job_action => 'declare
cursor y is
select pelanggan,jumlah
from tory.customer_income_topten;
cursor p is
select pelanggan,total
from tory.customer_income_lainnya;
begin
for z in y loop
update eis.topten_revenue
set bulan_lalu=z.jumlah
where customer=z.pelanggan;
commit;
end loop;
for x in p loop
update eis.topten_revenue
set bulan_ini=x.total
where customer=x.pelanggan;
commit;
end loop;
end;',
start_date => SYSTIMESTAMP,
repeat_interval => 'freq=MINUTELY;interval=15',
enabled => true);
end;
--exec dbms_scheduler.run_job('update_topten');

You might also like