maintenance: title: FORM_GASTRIC_BYPASS_POST_OP;; mlmname: FORM_GASTRIC_BYPASS_POST_OP;; arden: version 2.5;; version: 6.10;; institution: St. Clair Hospital ;; author: Shivprasad Jadhav;; specialist: Shivprasad Jadhav, Allscripts;; date: 2015-03-12;; validation: testing;; library: purpose: 12-03-2015 CSR-33077 : Created MLM Scenario 1 : When one medication is selected from available 3 for uncler prophylaxis then other 2 should not be able to get selected From medication Grid. Scenario 2 : When one medication is selected from available 4 for antiemetics then other 3 should not be able to get selected from Mdeication Grid pharmacy -anthiemetics section;; explanation: ;; keywords: ;; citations: ;; knowledge: type: data-driven;; data: ( this_communication, // Communication object this_form, // Form object client_info_obj //Arden ClientInfo object ) := argument; field_list:= this_form.Fields; CallingEvent := this_communication.CallingEvent; CallingField := this_communication.CallingFieldName; CallingItem := CallingField.Records_; Medication := last of ( field_list WHERE field_list.DataItemName = "MultiOrderGrid" and field_list.Control_MultiFieldOccNum = 49 ); Medication_Value := Medication.Value ; CPAP := last of ( field_list WHERE field_list.DataItemName = "MultiOrderGrid" and field_list.Control_MultiFieldOccNum = 70 ); CPAP_Value := CPAP.Value ; Respiratory := last of ( field_list WHERE field_list.DataItemName = "MultiOrderGrid" and field_list.Control_MultiFieldOccNum = 71 ); Respiratory_Value := Respiratory.Value ; // *********** Objects for first flow ************* Famotidine := first of (Medication_Value where Medication_Value.Name = "Famotidine Inj"); Pantoprazole := first of (Medication_Value where Medication_Value.Name = "Pantoprazole Inj"); Pantoprazole_40mg := first of (Medication_Value where Medication_Value.Name = "Pantoprazole 40mg DR Tab"); /*********************************************************************************************/ Metoclopramide := first of (Medication_Value where Medication_Value.Name = "Metoclopramide Inj"); Ondansetron := first of (Medication_Value where Medication_Value.Name = "Ondansetron Inj"); Promethazine := first of (Medication_Value where Medication_Value.Name = "Promethazine Inj"); Prochlorperazine := first of (Medication_Value where Medication_Value.Name = "Prochlorperazine Inj"); /*********************************************************************************************/ CPAP_Row := first of (CPAP_Value where CPAP_Value.Name = "CPAP"); Respiratory_Row:= first of (Respiratory_Value where Respiratory_Value.Name = "Nurse Instruction:"); If Metoclopramide.IsSelected = True Then Ondansetron.IsReadonly := True; Promethazine.IsReadonly := True ; Prochlorperazine.IsReadonly := True; Endif; If Ondansetron.IsSelected = True Then Metoclopramide.IsReadonly := True; Promethazine.IsReadonly := True ; Prochlorperazine.IsReadonly := True; Endif; If Promethazine.IsSelected = True Then Metoclopramide.IsReadonly := True; Ondansetron.IsReadonly := True; Prochlorperazine.IsReadonly := True; Endif; If Prochlorperazine.IsSelected = True Then Metoclopramide.IsReadonly := True; Ondansetron.IsReadonly := True; Promethazine.IsReadonly := True ; Endif; If Prochlorperazine.IsSelected = False And Metoclopramide.IsSelected = False And Ondansetron.IsSelected = False And Promethazine.IsSelected = False Then Metoclopramide.IsReadonly := False; Ondansetron.IsReadonly := False; Promethazine.IsReadonly := False ; Prochlorperazine.IsReadonly := False; EndIf; // Second flow ****************************************************************************** If Famotidine.IsSelected = True Then Pantoprazole.IsReadonly := True; Pantoprazole_40mg.IsReadonly := True ; Endif; If Pantoprazole.IsSelected = True Then Famotidine.IsReadonly := True; Pantoprazole_40mg.IsReadonly := True ; Endif; If Pantoprazole_40mg.IsSelected = True Then Famotidine.IsReadonly := True; Pantoprazole.IsReadonly := True ; Endif; If Famotidine.IsSelected = False And Pantoprazole.IsSelected = False And Pantoprazole_40mg.IsSelected = False Then Famotidine.IsReadonly := False; Pantoprazole.IsReadonly := False; Pantoprazole_40mg.IsReadonly := False ; EndIf; // Third flow ****************************************************************************** if (CPAP_Row.IsSelected = FALSE And Respiratory_Row.IsReadonly= TRUE ) Then A:=111; Endif; if ( CallingEvent = "FieldChange" ) then if ( CallingField = "MultiOrderGrid|70") or ( CallingField = "MultiOrderGrid|71") then if ( true IN CPAP_Row.IsSelected Or true IN Respiratory_Row.IsSelected ) then CPAP_Row.IsSelected := true; Respiratory_Row.IsSelected := true ; Respiratory_Row.IsReadonly := TRUE ; endif; endif; endif; if A= 111 Then CPAP_Row.IsSelected := FALSE; Respiratory_Row.IsSelected := FALSE; CPAP_Row.IsReadonly := FALSE ; Respiratory_Row.IsReadonly := FALSE ; Endif; ;; priority: 50 ;; evoke: ;; logic: conclude true; ;; action: return this_communication, this_form; ;; Urgency: 50;; end: