maintenance: title: Total Knee Replacement Discharge Instructions;; mlmname: FORM_TOTAL_KNEE_DCINST;; arden: version 2.5;; version: 0.00;; institution: St. Clair Hospital;; author: Shawn Head x7468;; specialist: Robert Stewart;; date: 2015-04-20;; validation: testing;; library: purpose: This MLM will auto populate certain fields on the order form based on the selected Discharge type ;; explanation: This MLM will populate fields on the order form based on the selected discharge type. ;; keywords: total, knee, replacement, discharge, instructions ;; citations: 4.20.2015 - STH - CSR#: 33148 - PROD 5.19.2015 - Auto select data on form based on selected template. ;; knowledge: type: data-driven;; data: //start here // This MLM is passed three arguments, of types // communication_type, form_type and client info object respectively. (this_communication, // Communication object this_form, // Form object client_info_obj //Arden ClientInfo object ) := argument; /*******************Make Changes To Spelling And Flags In This Section*******************/ /***************************************************************************************/ // Initialize error message error_message:=""; // Assigns fields passed in the Form object to the Field object field_list:= this_form.fields; CallingEvent := this_communication.CallingEvent; CallingField :=this_communication.CallingFieldName; ClientVisitGuid := this_communication.ClientVisitGuid; //Initialize MLM pointers: str_parse := mlm {{{SINGLE-QUOTE}}}UTIL_STRING_PARSE{{{SINGLE-QUOTE}}}; // Assigns fields passed in the Form object to the Field object field_list:= this_form.fields; CallingEvent := this_communication.CallingEvent; Visit_Guid := this_communication.ClientVisitGuid; Chart_Guid := this_communication.ChartGuid; Client_Guid := this_communication.ClientGuid; comm_obj := this_communication.primaryobj; call_field := this_communication.CallingFieldName; discharge_type1_dressing := ("Remove Aquacel dressing after 7 days", "After Aquacel dressing is removed, apply dry dressing.", "Change dressing daily.", "NO creams or lotions on incision."); discharge_type2_dressing := ""; DC_Type1 := first of (field_list where field_list.DataItemName = "DC_Home_Standard"); DC_Type2 := first of (field_list where field_list.DataItemName = "DC_Home_Standard 2"); Incision_Dressing_instruct := first of (field_list where field_list.DataItemName = "DC_Home_Dressing_Knee"); WeightBearing_instruct := first of (field_list where field_list.DataitemName = "DC_Home_Weight_Bearing"); Interventions := first of (field_list where field_list.DataitemName = "DISC_Total_Knee_Replacement"); Precautions := first of (field_list where field_list.DataitemName = "DISC_Total_Knee_Precautions"); PT_PW := first of (field_list where field_list.DataitemName = "DC_Home_PT_PerWeek"); RN_PW := first of (field_list where field_list.DataitemName = "DC_Home_RN_PerWeek"); Start_Ext := first of (field_list where field_list.DataitemName = "DC_Home_CPM_StartExt"); Start_Flex := first of (field_list where field_list.DataitemName = "DC_Home_CPM_StartFlex"); Freq_Machine := first of (field_list where field_list.DataitemName = "DC_Home_CPM_Freq"); Max_Flex := first of (field_list where field_list.DataitemName = "DC_Home_CPM_MaxFlexion"); Time_on_machine := first of (field_list where field_list.DataitemName = "DC_Home_CPM_Time"); CPM_Tolerated := first of (field_list where field_list.DataitemName = "DC_Home_CPM_IncCPMFlex"); Progress_2weeks := first of (field_list where field_list.DataitemName = "DC_Home_CPM_ProgressFlex"); //2 - 3 if this_communication.CallingFieldName = "DC_Home_Standard" then if DC_Type1.Value = true then DC_Type2.Control_read_only := true; Incision_Dressing_instruct.value := "Remove Aquacel dressing after 7 days; After Aquacel dressing is removed, apply dry dressing.; Change dressing daily.; NO creams or lotions on incision."; WeightBearing_instruct.Value := "Weight Bearing as Tolerated"; Interventions.Value := "Wear ted hose until directed at follow up appointment. Remove at bedtime and reapply in AM.; Inspect heel for redness. Notify physician if blister occurs.; OK to shower.; " || "Take over the counter stool softener while on pain medications.; " || "Use incentive spirometer every 2 hours while awake for 2 weeks post discharge.; NO driving until follow up appointment.; NO tub baths.; DO NOT place pillow beneath knee joint.; " || "Use assistive device for ambulation until otherwise instructed by Physician or Physical Therapist; NO additional Advil, Aleve, Ibuprofen or Aspirin until permitted by surgeon."; Precautions.Value := "Call Your Surgeons Office: If incision becomes red, if drainage occurs, if excessive swelling develops, fever of 101 or above, nausea and vomiting, diarrhea.; " || "If you had a joint replacement you should be on a prophylactic medication to help avoid blood clots. If you were discharged without a medication please contact your surgeon.; " || "Call 911 if you develop sudden shortness of breath or develop chest pain."; PT_PW.Value := "2 - 3"; RN_PW.Value := "2 - 3"; else DC_Type2.Control_read_only := false; Incision_Dressing_instruct.value := ""; WeightBearing_instruct.Value := ""; Interventions.Value := ""; Precautions.Value := ""; PT_PW.Value := ""; RN_PW.Value := ""; endif; endif; if this_communication.CallingFieldName = "DC_Home_Standard 2" then if DC_Type2.Value = true then DC_Type1.Control_read_only := true; Incision_Dressing_instruct.value := "Leave incision open to air.; Apply bandage if incision has drainage present."; WeightBearing_instruct.Value := "Weight Bearing as Tolerated"; Interventions.Value := "Inspect heel for redness. Notify physician if blister occurs.; OK to shower.; Take over the counter stool softener while on pain medications.; " || "Use incentive spirometer every 2 hours while awake for 2 weeks post discharge.; NO tub baths.; DO NOT place pillow beneath knee joint.; " || "Use assistive device for ambulation until otherwise instructed by Physician or Physical Therapist; Resume normal activity as tolerated.; " || "NO driving until narcotics are discontinued.; NO driving until leg control is regained; NO additional Advil, Aleve, Ibuprofen or Aspirin until permitted by surgeon.; " || "When resting at night, keep knee at full extention , use brace if needed."; Precautions.Value := "Call Your Surgeons Office: If incision becomes red, if drainage occurs, if excessive swelling develops, fever of 101 or above, nausea and vomiting, diarrhea.; " || "If you had a joint replacement you should be on a prophylactic medication to help avoid blood clots. If you were discharged without a medication please contact your surgeon.; " || "Call 911 if you develop sudden shortness of breath or develop chest pain."; PT_PW.Value := "2 - 3"; RN_PW.Value := "2 - 3"; Start_Ext.value := "0"; Start_Flex.value := "90"; Freq_Machine.value := "1 to 2 times per day"; Max_Flex.value := "110 degrees"; Time_on_machine.value := "30 to 60 minutes"; CPM_Tolerated.value := true; Progress_2weeks.value := true; else DC_Type1.Control_read_only := false; Incision_Dressing_instruct.value := ""; WeightBearing_instruct.Value := ""; Interventions.Value := ""; Precautions.Value := ""; PT_PW.Value := ""; RN_PW.Value := ""; Start_Ext.value := ""; Start_Flex.value := ""; Freq_Machine.value := ""; Max_Flex.value := ""; Time_on_machine.value := ""; CPM_Tolerated.value := false; Progress_2weeks.value := false; endif; endif; /* if this_communication.CallingFieldName = "DC_Home_Standard2" then abc := ""; endif; for x in (1 seqto count(discharge_type1_dressing)) do if x = 1 then selected_value := discharge_type1_dressing[x]; else selected_value := selected_value || "; " || discharge_type1_dressing[x]; endif; enddo; Incision_Dressing_instruct.Value := selected_value; */ //end here ;; priority: 50 ;; evoke: ;; logic: conclude true; ;; action: return this_communication, this_form; ;; Urgency: 50;; end: