Guest User

Untitled

a guest
Dec 15th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. SELECT
  2. -- EXTRACTVALUE(tpp.xml_data, '/*/PBS_LI_TEXT') tpp_li_text
  3. --, EXTRACTVALUE(tpp.xml_data, '/*/PBS_LI_TEXT') tpp_li_text
  4.  
  5. count(*)--bpld.pl_id, tpp.pc_id, mpp.pc_id, pr.pr_id, EXTRACTVALUE(pr.xml_data, '/*/PR_TYPE'), CASE WHEN (mpp.pc_id != EXTRACTVALUE(pr.xml_data, '/*/MPP_LIST/MPP[1]/MPP_ID') AND EXTRACTVALUE(pr.xml_data, '/*/PR_TYPE') != 'INFUS') THEN 'ERROR' END mpp_pr_match
  6. FROM pbsmgr.xview_pbs_product_listing bpld
  7. JOIN pbsmgr.pbs_concept_details tpp
  8. ON tpp.pc_id = bpld.pbs_concept_id
  9. AND tpp.pbs_concept_type = 'TPP'
  10.  
  11. JOIN pbsmgr.pbs_concept_details mpp
  12. ON EXTRACTVALUE(tpp.xml_data, '/*/PBS_MPP_CONCEPT') = mpp.pc_id
  13. AND mpp.pbs_concept_type = 'MPP'
  14. AND bpld.start_datetime >= mpp.start_datetime AND NVL(bpld.end_datetime, dt.high) <= NVL(mpp.end_datetime, dt.high)
  15.  
  16. LEFT JOIN pbsmgr.pbs_prescribing_rule_details pr
  17. ON pr.pr_id = bpld.pbs_pr_id
  18. AND (
  19. (bpld.start_datetime >= pr.start_datetime AND NVL(bpld.end_datetime, dt.high) <= NVL(pr.end_datetime, dt.high))
  20. OR
  21. (pr.start_datetime BETWEEN bpld.start_datetime AND NVL(bpld.end_datetime, dt.high) AND (bpld.start_datetime <= pr.start_datetime AND NVL(bpld.end_datetime, dt.high) >= NVL(pr.end_datetime, dt.high))) --OR pr.end_datetime BETWEEN bpld.start_datetime AND NVL(bpld.end_datetime, dt.high))
  22. )
  23.  
  24. --TPP/MPP ON MPP_PCID AND LIST_DATE
  25.  
  26.  
  27.  
  28. --LEFT JOIN pbsmgr.pbs_prescribing_rule_details pr
  29. -- ON pr.pr_id = bpld.pbs_pr_id
  30. -- AND pr.status_control IS NOT NULL
  31. WHERE bpld.status_control IS NOT NULL
  32. --ORDER BY mpp_pr_match NULLS LAST
  33. --ORDER BY pr.pr_id NULLS FIRST, 1, 2, 3
Add Comment
Please, Sign In to add comment