Advertisement
game8037

[FIX] query POS

Nov 18th, 2022
21
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.63 KB | None | 0 0
  1. SELECT
  2. unit,
  3. no_pos,
  4. uraian,
  5. no_skao,
  6. penetapan,
  7. disburse,
  8. COALESCE ( SUM ( terbayar ), 0 ) AS terbayar
  9. FROM
  10. (
  11. (
  12. SELECT
  13. unit_code AS unit,
  14. code AS no_pos,
  15. lookup_name AS uraian,
  16. a.nomor AS no_skao,
  17. penetapan,
  18. ako AS disburse,
  19. COALESCE ( SUM ( b.rptagihan ), 0 ) AS terbayar
  20. FROM
  21. oltp.prk_labarugi_ebudget e
  22. LEFT JOIN oltp.view_unit_induk w ON e.unit_code = w.kdwil_ebudget --ambil dari view wilayah
  23. LEFT JOIN oltp.a2k_ski_sko a ON e.year = a.year AND a.kdwil = w.kdwil AND a.type = 'AO' AND a.status = 't' --ambil dari view wilayah
  24. LEFT JOIN oltp.a2k_realisasi_operasi b ON e.code = b.prk AND e.year = b.year AND w.unitap = b.unit --ambil dari view wilayah
  25. WHERE
  26. $wheres
  27. GROUP BY
  28. e.code,
  29. e.unit_code,
  30. e.lookup_name,
  31. a.nomor,
  32. e.penetapan,
  33. e.ako
  34. ORDER BY
  35. e.code
  36. )
  37. UNION
  38. (
  39. SELECT
  40. unit_code AS unit,
  41. code AS no_pos,
  42. lookup_name AS uraian,
  43. a.nomor AS no_skao,
  44. penetapan,
  45. ako AS disburse,
  46. COALESCE ( SUM ( rp.nilai_bayar ), 0 ) AS terbayar
  47. FROM
  48. oltp.prk_labarugi_ebudget e
  49. LEFT JOIN oltp.view_unit_induk w ON e.unit_code = w.kdwil_ebudget --ambil dari view wilayah
  50. LEFT JOIN oltp.a2k_ski_sko a ON e.year = a.year AND a.kdwil = w.kdwil AND a.type = 'AO' AND a.status = 't' --ambil dari view wilayah
  51. LEFT JOIN (
  52. SELECT
  53. r.kdwil,
  54. r.nilai_bayar,
  55. r.YEAR,
  56. T.pos -- sum(r.nilai_bayar)
  57.  
  58. FROM
  59. oltp.a2k_realisasi_pengalihan r
  60. LEFT JOIN oltp.a2k_plafon_mou_detail T ON r.ref_id = T.period_id
  61. WHERE
  62. r.isactive
  63. AND r.TYPE = 'AO'
  64. AND category = 'MOU'
  65. UNION
  66. SELECT
  67. r.kdwil,
  68. r.nilai_bayar,
  69. r.YEAR,
  70. T.pos -- r.* ,t.* -- sum(r.nilai_bayar)
  71.  
  72. FROM
  73. oltp.a2k_realisasi_pengalihan r
  74. LEFT JOIN oltp.a2k_plafon_nonmou_detail T ON r.ref_id = T.period_id
  75. WHERE
  76. r.isactive
  77. AND r.TYPE = 'AO'
  78. AND category = 'NON MOU'
  79. ) rp ON w.kdwil = rp.kdwil
  80. AND e.YEAR :: INT = rp.YEAR :: INT
  81. AND e.code :: int2 = rp.pos :: int2 -- total realisasi pengalihan
  82.  
  83. WHERE
  84. $wheres
  85.  
  86. GROUP BY
  87. e.code,
  88. e.unit_code,
  89. e.lookup_name,
  90. a.nomor,
  91. e.penetapan,
  92. e.ako
  93. ORDER BY
  94. e.code
  95. )
  96. UNION -- PPJ
  97. (
  98. SELECT
  99. --LEFT ( e.kdwil, 3 ) || '1' AS unit,
  100. r.unit as unit,
  101. '998' AS no_pos,
  102. 'BPUJL, PPJ & Bea Meterai' AS uraian,
  103. e.nomor AS no_skao,
  104. SUM ( DISTINCT A.ppj ) AS penetapan,
  105. SUM ( DISTINCT ppj ) AS disburse,
  106. SUM ( r.rptagihan ) AS terbayar
  107. FROM
  108. oltp.a2k_ski_sko e
  109. LEFT JOIN oltp.view_unit_induk w ON e.kdwil = w.kdwil --ambil dari view wilayah
  110. LEFT JOIN (
  111. SELECT
  112. r.kdwil,
  113. r.YEAR,
  114. SUM ( ppn ) AS ppj
  115. FROM
  116. oltp.a2k_plafon_penetapan r
  117. WHERE
  118. TYPE = 'AO'
  119. AND isactive = 1
  120. GROUP BY
  121. YEAR,
  122. kdwil
  123. ) A ON e.YEAR = A.YEAR
  124. AND e.kdwil = A.kdwil
  125. LEFT JOIN (
  126. SELECT
  127. r.unit,
  128. r.YEAR,
  129. SUM ( rptagihan ) AS rptagihan
  130. FROM
  131. oltp.a2k_realisasi_operasi r
  132. WHERE
  133. prk = '998'
  134. AND deleted_at IS NULL
  135. GROUP BY
  136. YEAR,
  137. unit
  138. ) r ON e.YEAR = r.YEAR
  139. AND w.unitap = r.unit
  140. WHERE
  141. $wheres
  142. AND e.status = 't'
  143. AND e.TYPE = 'AO'
  144. GROUP BY
  145. e.kdwil,r.unit,
  146. no_skao
  147. )
  148. ) AS uni
  149. GROUP BY
  150. unit,
  151. no_pos,
  152. uraian,
  153. no_skao,
  154. penetapan,
  155. disburse
  156. ORDER BY
  157. no_skao, no_pos
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement