ronaldkwandy

Untitled

Apr 29th, 2020
362
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.82 KB | None | 0 0
  1. /**************************************************************************************
  2. -- 1. Jika parameter PPengelompokanPeriodeId = % maka create semua kelompok yang belum ada
  3. **************************************************************************************/
  4.  
  5. IF PPengelompokanPeriodeId IS NULL THEN
  6.  
  7. INSERT INTO hm_apy004
  8. ( id, pengelompokan_periode_id, jenis_tunjangan, periode_bayar,
  9. tanggal_awal, tanggal_akhir, tahun_bulan,
  10. version, user_create, creation_time, user_modify, modification_time )
  11. SELECT public.SYS_GUID(), A.pengelompokan_periode_id, null, ''Bulanan'',
  12. CASE WHEN LEFT(A.kode_tanggal_awal, 1) = ''B'' THEN TO_DATE(PTahunBulan || SUBSTR(A.kode_tanggal_awal,2,2), ''YYYYMMDD'')
  13. ELSE TO_DATE(PTahunBulan || SUBSTR(A.kode_tanggal_awal,2,2), ''YYYYMMDD'') - INTERVAL ''1 MONTH''
  14. END,
  15. CASE WHEN LEFT(A.kode_tanggal_awal, 1) = ''B'' THEN TO_DATE(PTahunBulan || SUBSTR(A.kode_tanggal_awal,2,2), ''YYYYMMDD'') + INTERVAL ''1 MONTH'' - INTERVAL ''1 DAY''
  16. ELSE TO_DATE(PTahunBulan || SUBSTR(A.kode_tanggal_awal,2,2), ''YYYYMMDD'') - INTERVAL ''1 DAY''
  17. END, PTahunBulan,
  18. 1, PUserName, CURRENT_TIMESTAMP, PUserName, CURRENT_TIMESTAMP
  19. FROM hm_mpy016 A
  20. LEFT JOIN hm_apy004 B on A.pengelompokan_periode_id = B.pengelompokan_periode_id and B.tahun_bulan = PTahunBulan
  21. WHERE B.id is null;
  22.  
  23.  
  24. /**************************************************************************************
  25. -- 2. jika tidak maka create data untuk periode gaji bulan yang dikirim dari parameter jika belum ada
  26. **************************************************************************************/
  27.  
  28. ELSE
  29.  
  30. SELECT COUNT(*)
  31. INTO VCount
  32. FROM hm_apy004
  33. WHERE pengelompokan_periode_id = PPengelompokanPeriodeId AND
  34. tahun_bulan = PTahunBulan;
  35.  
  36. IF VCount = 0 THEN
  37.  
  38. INSERT INTO hm_apy004
  39. ( id, pengelompokan_periode_id, jenis_tunjangan, periode_bayar,
  40. tanggal_awal, tanggal_akhir, tahun_bulan,
  41. version, user_create, creation_time, user_modify, modification_time )
  42. SELECT public.SYS_GUID(), PPengelompokanPeriodeId, null, ''Bulanan'',
  43. CASE WHEN LEFT(kode_tanggal_awal, 1) = ''B'' THEN TO_DATE(PTahunBulan || SUBSTR(kode_tanggal_awal,2,2), ''YYYYMMDD'')
  44. ELSE TO_DATE(PTahunBulan || SUBSTR(kode_tanggal_awal,2,2), ''YYYYMMDD'') - INTERVAL ''1 MONTH''
  45. END,
  46. CASE WHEN LEFT(kode_tanggal_awal, 1) = ''B'' THEN TO_DATE(PTahunBulan || SUBSTR(kode_tanggal_awal,2,2), ''YYYYMMDD'') + INTERVAL ''1 MONTH'' - INTERVAL ''1 DAY''
  47. ELSE TO_DATE(PTahunBulan || SUBSTR(kode_tanggal_awal,2,2), ''YYYYMMDD'') - INTERVAL ''1 DAY''
  48. END, PTahunBulan,
  49. 1, PUserName, CURRENT_TIMESTAMP, PUserName, CURRENT_TIMESTAMP
  50. FROM hm_mpy016
  51. WHERE pengelompokan_periode_id = PPengelompokanPeriodeId;
  52.  
  53. END IF;
  54.  
  55. END IF;
Advertisement
Add Comment
Please, Sign In to add comment