Id: library-OpioidCDSREC09 Type: logic-library Version: 2022.1.0 Status: active Related: type: depends-on Resource: http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers type: depends-on Resource: http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon type: depends-on Resource: http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommonConfig type: depends-on Resource: http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines Data Requirements: type: Procedure code filter: path: code valueset: http://fhir.org/guides/cdc/opioid-cds/ValueSet/pdmp-review-procedure type: Observation code filter: path: code valueset: http://fhir.org/guides/cdc/opioid-cds/ValueSet/pdmp-data-reviewed-finding Content: type: text/cql library OpioidCDSREC09 version '2022.1.0' using FHIR version '4.0.1' include FHIRHelpers version '4.0.1' called FHIRHelpers include OpioidCDSCommon version '2022.1.0' called Common include OpioidCDSCommonConfig version '2022.1.0' called Config include OpioidCDSRoutines version '2022.1.0' called Routines /* ** ** Recommendation #9 ** Clinicians should review the patient's history of controlled substance ** prescriptions using state prescription drug monitoring program (PDMP) data ** to determine whether the patient is receiving opioid dosages or dangerous ** combinations that put him or her at high risk for overdose. Clinicians ** should review PDMP data when starting opioid therapy for subacute or chronic pain ** and periodically during opioid therapy for chronic pain, ranging from ** every prescription to every 3 months ** (recommendation category: A, evidence type: 4). ** ** When ** Provider is prescribing an opioid analgesic with ambulatory misuse potential in the outpatient setting ** Prescription is for treating chronic pain. ** Opioid review is useful for this patient: ** Patient is 18 or over ** Patient does not have findings indicating limited life expectancy ** Patient does not have orders for therapies indicating end of life care ** Patient is not undergoing active cancer treatment: ** Patient has had at least 2 encounters within the past year with any diagnosis of cancer ** PDMP data has not been reviewed in the past 90 days ** Then ** Recommend offering naloxone medications ** Recommend launch of SMART-APP to search PDMP data for this patient ** Document PDMP data reviewed; snooze 3 months ** N/A - see comment, snooze 3 months ** */ // META: Plan Definition: http://fhir.org/guides/cdc/opioid-cds-r4/PlanDefinition/opioid-cds-09 parameter ContextPrescriptions List<MedicationRequest> context Patient define "Look Back 90 Days": Interval[Today() - 90 days, Today()] define "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions": ( Common."Is Opioid Analgesic with Ambulatory Misuse Potential?"( ContextPrescriptions ) ) AmbulatoryOpioidPrescription where Routines."Is Acute Pain Prescription?"( AmbulatoryOpioidPrescription ) define "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential": exists( "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" ) define "Is Recommendation Applicable?": "Inclusion Criteria" and not "Exclusion Criteria" define "Inclusion Criteria": "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential" and Routines."Is Opioid Review Useful?" and "PDMP Data Not Reviewed in Past 90 Days" define "Exclusion Criteria": false define "PDMP Data Not Reviewed in Past 90 Days": Config."PDMP Data Not Reviewed in Past 90 Days Criteria Enabled" and not ( exists ( [Procedure: Common."PDMP review procedure"] P where P.status ~ 'completed' and P.performed during "Look Back 90 Days" ) or exists ( [Observation: Common."PDMP data reviewed finding"] O where O.status in { 'final', 'amended' } and ( if O.effective is FHIR.Period then (O.effective as FHIR.Period) during day of "Look Back 90 Days" else if O.effective is FHIR.dateTime then date from O.effective in day of "Look Back 90 Days" else false ) ) ) define "Get Indicator": if "Is Recommendation Applicable?" then 'warning' else null define "Get Summary": if "Is Recommendation Applicable?" then 'Notify: PDMP data for this patient has not been reviewed in the past 90 days.' else null define "Get Detail": if "Is Recommendation Applicable?" then 'Medication requests(s): ' + Combine( flatten( Common.GetMedicationNames( "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" ) ), ', ' ) else null
Library - Recommendation #9 - Consider Patient's History of Controlled Substance Prescriptions
Centers for Disease Control and Prevention (CDC)
Value set Opioid analgesics with ambulatory misuse potential
Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions
Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential