stanleycia

Untitled

Oct 14th, 2025
155
0
350 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 8.86 KB | None | 0 0
  1. SELECT AA.user_code
  2.        || ' - '
  3.        || AA.user_name                            COLLECTOR,
  4.        TO_CHAR(AA.collection_date, 'DD-MON-YYYY') COLLECTION_DATE,
  5.        AA.collection_no,
  6.        AA.collection_no_print,
  7.        AA.user_code,
  8.        AA.user_name,
  9.        NVL(BB.doc_status, '-')                    DOC_STATUS,
  10.        NVL(CC.pay_status, '-')                    PAY_STATUS,
  11.        CASE
  12.          WHEN BB.doc_status = 'A' THEN 'Approved'
  13.          ELSE 'Submitted'
  14.        END
  15.        || 'By  '
  16.        || BB.doc_last_status_by
  17.        || ' - '
  18.        || BB.doc_last_status_name
  19.        || ' At '
  20.        || Getshortdate(BB.doc_last_status_date)   DOC_STATUS_BY,
  21.        CASE
  22.          WHEN pay_status = 'A' THEN 'Approved'
  23.          ELSE 'Submitted'
  24.        END
  25.        || 'By  '
  26.        || pay_last_status_by
  27.        || ' - '
  28.        || pay_last_status_name
  29.        || ' At '
  30.        || Getshortdate(pay_last_status_date)      PAY_STATUS_BY
  31. FROM   (SELECT DISTINCT A.user_id,
  32.                         E.user_code,
  33.                         E.user_name,
  34.                         A.collection_no,
  35.                         B.collection_no_print,
  36.                         A.collection_date,
  37.                         C.collector_code,
  38.                         C.collector_name
  39.         FROM   oarr_collector_handover A
  40.                join oarr_collection_trx B
  41.                  ON A.collection_no = B.collection_no
  42.                join oarr_collector_master C
  43.                  ON B.collector_code = C.collector_code
  44.                     AND C.flag_blocked = 'N'
  45.                join oarr_kp_master D
  46.                  ON B.kp_id = D.kp_id
  47.                join osys_user_master E
  48.                  ON C.user_id = E.user_id
  49.         WHERE  1 = 1
  50.                AND A.handover_type = 'T'
  51.                AND A.flag_deleted = 'N'
  52.                AND A.collection_date >= '08-AUG-2025'
  53.                AND A.collection_date >= :B3
  54.                AND A.collection_date <= :B2
  55.                AND ( INSTR(:B1, C.kp_code, 1, 1) > 0
  56.                       OR INSTR(:B1, D.kp_code, 1, 1) > 0 )) AA
  57.        left join (SELECT DISTINCT A.handover_status DOC_STATUS,
  58.                                   A.collection_no,
  59.                                   CASE
  60.                                     WHEN A.handover_status = 'N' THEN
  61.                                     NVL(A.modified_date, A.created_date)
  62.                                     ELSE A.last_status_date
  63.                                   END               DOC_LAST_STATUS_DATE,
  64.                                   CASE
  65.                                     WHEN A.handover_status = 'N' THEN
  66.                                     NVL(A.modified_by, A.created_by)
  67.                                     ELSE A.last_status_by
  68.                                   END               DOC_LAST_STATUS_BY,
  69.                                   D.user_name       DOC_LAST_STATUS_NAME
  70.                   FROM   oarr_collector_handover A,
  71.                          osys_user_master D,
  72.                          (SELECT AAA.user_id,
  73.                                  AAA.collection_no,
  74.                                  BBB.collection_no_print,
  75.                                  MAX(AAA.last_status_date) DOC_LAST_STATUS_DATE,
  76.                                  MAX(AAA.handover_id)      DOC_HANDOVER_ID
  77.                           FROM   oarr_collector_handover AAA
  78.                                  join oarr_collection_trx BBB
  79.                                    ON AAA.collection_no = BBB.collection_no
  80.                                  join oarr_collector_master CCC
  81.                                    ON BBB.collector_code = CCC.collector_code
  82.                                       AND CCC.flag_blocked = 'N'
  83.                                  join oarr_kp_master DDD
  84.                                    ON BBB.kp_id = DDD.kp_id
  85.                           WHERE  1 = 1
  86.                                  AND AAA.handover_type = 'T'
  87.                                  AND AAA.flag_deleted = 'N'
  88.                                  AND AAA.collection_date >= '08-AUG-2025'
  89.                                  AND AAA.collection_date >= :B3
  90.                                  AND AAA.collection_date <= :B2
  91.                                  AND ( INSTR(:B1, CCC.kp_code, 1, 1) > 0
  92.                                         OR INSTR(:B1, DDD.kp_code, 1, 1) > 0 )
  93.                                  AND AAA.doc_type_id <> 14
  94.                           GROUP  BY AAA.user_id,
  95.                                     AAA.collection_no,
  96.                                     BBB.collection_no_print) E
  97.                   WHERE  1 = 1
  98.                          AND E.doc_handover_id = A.handover_id
  99.                          AND CASE
  100.                                WHEN A.handover_status = 'N' THEN
  101.                                  CASE
  102.                                    WHEN A.modified_by IS NULL THEN A.created_by
  103.                                    ELSE A.modified_by
  104.                                  END
  105.                                ELSE A.last_status_by
  106.                              END = D.user_code(+)) BB
  107.               ON AA.collection_no = BB.collection_no
  108.        left join (SELECT DISTINCT A.handover_status PAY_STATUS,
  109.                                   A.collection_no,
  110.                                   CASE
  111.                                     WHEN A.handover_status = 'N' THEN
  112.                                     NVL(A.modified_date, A.created_date)
  113.                                     ELSE A.last_status_date
  114.                                   END               PAY_LAST_STATUS_DATE,
  115.                                   CASE
  116.                                     WHEN A.handover_status = 'N' THEN
  117.                                     NVL(A.modified_by, A.created_by)
  118.                                     ELSE A.last_status_by
  119.                                   END               PAY_LAST_STATUS_BY,
  120.                                   D.user_name       PAY_LAST_STATUS_NAME
  121.                   FROM   oarr_collector_handover A,
  122.                          osys_user_master D,
  123.                          (SELECT AAA.user_id,
  124.                                  AAA.collection_no,
  125.                                  BBB.collection_no_print,
  126.                                  MAX(AAA.last_status_date) PAY_LAST_STATUS_DATE,
  127.                                  MAX(AAA.handover_id)      PAY_HANDOVER_ID
  128.                           FROM   oarr_collector_handover AAA
  129.                                  join oarr_collection_trx BBB
  130.                                    ON AAA.collection_no = BBB.collection_no
  131.                                  join oarr_collector_master CCC
  132.                                    ON BBB.collector_code = CCC.collector_code
  133.                                       AND CCC.flag_blocked = 'N'
  134.                                  join oarr_kp_master DDD
  135.                                    ON BBB.kp_id = DDD.kp_id
  136.                           WHERE  1 = 1
  137.                                  AND AAA.handover_type = 'T'
  138.                                  AND AAA.flag_deleted = 'N'
  139.                                  AND AAA.collection_date >= '08-AUG-2025'
  140.                                  AND AAA.collection_date >= :B3
  141.                                  AND AAA.collection_date <= :B2
  142.                                  AND ( INSTR(:B1, CCC.kp_code, 1, 1) > 0
  143.                                         OR INSTR(:B1, DDD.kp_code, 1, 1) > 0 )
  144.                                  AND AAA.doc_type_id = 14
  145.                           GROUP  BY AAA.user_id,
  146.                                     AAA.collection_no,
  147.                                     BBB.collection_no_print) E
  148.                   WHERE  1 = 1
  149.                          AND E.pay_handover_id = A.handover_id
  150.                          AND CASE
  151.                                WHEN A.handover_status = 'N' THEN
  152.                                NVL(A.modified_by, A.created_by)
  153.                                ELSE A.last_status_by
  154.                              END = D.user_code(+)) CC
  155.               ON AA.collection_no = CC.collection_no
  156. WHERE  ( :B5 IS NULL
  157.           OR ( ( :B6 = '0'
  158.                  AND ( AA.collector_code
  159.                        || AA.collector_name LIKE '%'
  160.                                                  || :B5
  161.                                                  || '%' ) )
  162.                 OR ( :B6 = '1'
  163.                      AND ( AA.collection_no
  164.                            || AA.collection_no_print LIKE '%'
  165.                                                           || :B5
  166.                                                           || '%' ) ) ) )
  167.        AND ( :B4 = '0'
  168.               OR ( ( :B4 = '1'
  169.                      AND ( BB.doc_status = 'N'
  170.                             OR CC.pay_status = 'N' ) )
  171.                     OR ( :B4 = '2'
  172.                          AND ( BB.doc_status = 'A'
  173.                                 OR CC.pay_status = 'A' ) ) ) )
  174. ORDER  BY AA.collection_no,
  175.           AA.collection_date
Advertisement
Add Comment
Please, Sign In to add comment