Advertisement
Guest User

Untitled

a guest
Sep 20th, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.73 KB | None | 0 0
  1. SELECT DISTINCT -- Distinct, nes apskaita kartais šalina ir kuria iš naujo įrašus (t.y. gali būti daugiau nei vienas įrašas xx_slv020_recalc_actions)
  2.       rec.source_type,
  3.       rec.source_id,
  4.       rcb.cash_receipt_id cash_receipt_id,
  5.       -- Priklausomai nuo to, ar tai atgretinimo įvykis, naudojame DK arba Reversal DK datą
  6.       DECODE(rcb.status,
  7.         'REVERSED', rcb.reversal_gl_date,
  8.         rcb.gl_date) gl_date,
  9.       DECODE(rcb.status,
  10.         'REVERSED', rcb.cash_receipt_id,
  11.         -1) reversed_source_id
  12.     FROM
  13.       xx_slv020_recalc_actions rec,
  14.       xx_mais_rcp_balance rcb
  15.     WHERE
  16.       rec.process_status = 1 AND  -- Apdorojimo būsena - apdorojamas
  17.       rec.TYPE = 0 AND            -- Tipas - naujas (atmetame perskaičiavimus)
  18.       rec.source_type = 'M' AND -- Įvykio tipas - Sugretinimas
  19.       rcb.cash_receipt_id = rec.source_id AND
  20.       -- Jei įplauka stornuota, tikriname ar skirstoma pradinė įplauką. Jei ne, neskirstysime ir stornavimo
  21.       (rcb.status <> 'REVERSED' OR
  22.       EXISTS(
  23.         SELECT
  24.           NULL
  25.         FROM
  26.           xx_slv020_distribute_actions dic
  27.         WHERE
  28.           dic.source_type = rec.source_type AND
  29.           dic.source_id = rec.source_id AND
  30.           dic.reversed_source_id = -1)) AND
  31.       -- Prasisukus apskaitai gali būti, kad atsiras dar vienas įrašas - ignoruojame
  32.       NOT EXISTS(
  33.         SELECT
  34.           NULL
  35.         FROM
  36.           xx_slv020_distribute_actions dic
  37.         WHERE
  38.           dic.source_type = rec.source_type AND
  39.           dic.source_id = rec.source_id AND
  40.           -- Jei įplauka buvo stornuota
  41.           dic.reversed_source_id = DECODE(rcb.status,
  42.             'REVERSED', rcb.cash_receipt_id,
  43.             -1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement