Procedure

TfrmReview.cmdOKClick

Module

fReview

Last Modified

7/15/2014 3:26:38 PM

Comments

Validate the electronic signature & call SaveSignItem for the encounter

Visibility

Public/Published

Owner

TfrmReview

Declaration

procedure cmdOKClick(Sender: TObject);

Calls Hierarchy


TfrmReview.cmdOKClick
 ├TfrmReview.AnyItemsAreChecked
 │ ├TfrmReview.ItemsAreChecked
 │ └TfrmReview.CSItemsAreChecked
 ├ValidESCode
 ├ValidateOrderActionNature
 ├IsInvalidActionWarning
 │ ├IsLatestAction
 │ └ReportBox
 │   └CreateReportBox
 │     └TfrmBase508Form.Create
 │       ├TfrmBase508Form.UpdateAccessibilityActions
 │       ├UnfocusableControlEnter
 │       └AdjustControls
 │         ├TfrmBase508Form.ModifyUnfocusableControl
 │         └..(rec)..
 ├SignatureForItem
 │ └TfrmBase508Form.Create...
 ├PersonHasKey
 ├SaveUnsignedOrders
 ├TfrmReview.GetCheckBoxStatus
 │ └TSigItems.GetSigItems
 ├OrderRequiresSignature
 ├ExecuteSessionOrderChecks
 │ ├OrderChecksForSession
 │ ├TfrmBase508Form.Create...
 │ ├IsMonograph
 │ ├TOCRec.Create
 │ ├TextForOrder
 │ ├GetXtraTxt
 │ ├TfrmOCSession.SetReqJustify
 │ └TfrmFrame.SetActiveTab
 │   ├TfrmFrame.PageIDToTab
 │   └TfrmFrame.tabPageChange
 │     ├TfrmFrame.TabToPageID
 │     ├TfrmFrame.SwitchToPage
 │     └SpeakPatient
 ├IsUserNurseProvider
 │ └PersonHasKey
 ├TSigItems.OK2SaveSettings
 ├SetSAN
 │ ├tCryptography.Create
 │ │ ├tCryptography.Reset
 │ │ ├sCardReady
 │ │ │ ├SCardEstablishContext
 │ │ │ ├SCardListReadersA
 │ │ │ └SCardConnectA
 │ │ ├tCryptography.RaiseErr
 │ │ ├CryptAcquireContext
 │ │ └CryptGetProvParam
 │ └getSANFromCard
 │   ├checkPINValue
 │   │ ├sCardReady...
 │   │ ├CryptAcquireContext
 │   │ ├setPINValue
 │   │ │ ├CryptAcquireContext
 │   │ │ ├CryptSetProvParam
 │   │ │ └CryptReleaseContext
 │   │ └CryptReleaseContext
 │   └tCryptography.FindCert
 │     ├CertOpenSystemStore
 │     ├CertEnumCertificatesInStore
 │     ├CertGetNameString
 │     ├SerialNum
 │     ├CertDateTimeStr
 │     ├tCryptography.SigningCert
 │     │ └CertGetIntendedKeyUsage
 │     ├CertVerifyTimeValidity
 │     ├CertFindExtension
 │     ├tCryptography.CRLDistPoint
 │     │ └CryptDecodeObject
 │     ├Revco
 │     │ └CertVerifyRevocation
 │     └tCryptography.CertChainCheck
 │       ├CertCreateCertificateChainEngine
 │       ├Memo
 │       ├tCryptography.RaiseErr
 │       ├CertGetCertificateChain
 │       └SetStatus
 │         └Memo
 ├checkPINValue...
 ├tCryptography.Create...
 ├Piece2end
 ├tCryptography.Reset
 ├Log2File
 ├StoreDigitalSig
 ├UpdateOrderDGIfNeeded
 │ ├TPatient.Clear
 │ └TPatient.SetDFN
 │   ├TPatient.Clear
 │   └SelectPatient
 │     └FormatSSN
 ├BuildSaveUnsignedList
 │ └SaveBillingData
 │   ├AttachDxToOrderList
 │   │ ├InitializeNewDxRec
 │   │ └GetBADxListForOrder
 │   └rpcSaveCIDCData
 │     └VerifyOrderIdExists
 ├OrdersToBeSignedOrReleased
 ├BADxEntered
 │ ├IsOrderBillable
 │ │ └PrepOrderID
 │ ├rpcOrderRequiresDx
 │ ├OrdersHaveDx
 │ │ ├InitializeNewDxRec
 │ │ ├tempDxNodeExists
 │ │ └GetBADxListForOrder
 │ └SaveBillingData...
 ├LockedForOrdering
 │ └LockPatient
 ├TfrmFrame.GetTimedOut
 │ └TimedOut
 ├TfrmPrintLocation.rpcIsPatientOnWard
 ├TEncounter.GetLocationName
 │ └TEncounter.UpdateText
 │   └GetEncounterText
 ├TEncounter.GetLocationText
 │ └TEncounter.UpdateText...
 ├TEncounter.GetVisitCategory
 ├TfrmPrintLocation.PrintLocation
 │ ├TfrmBase508Form.Create...
 │ ├CurrentLocationForPatient
 │ ├TfrmPrintLocation.ProcessClinicOrders
 │ │ └TfrmPrintLocation.rpcChangeOrderLocation
 │ ├TEncounter.EncounterSwitch
 │ │ ├TEncounter.SetLocation
 │ │ ├TEncounter.SetVisitCategory
 │ │ └TEncounter.SetDateTime
 │ └TfrmFrame.DisplayEncounterText
 │   ├TEncounter.GetLocationText...
 │   ├TEncounter.GetProviderName
 │   │ └TEncounter.UpdateText...
 │   └TfrmFrame.FitToolbar
 ├TfrmPrintLocation.SwitchEncounterLoction
 │ ├TfrmBase508Form.Create...
 │ ├CurrentLocationForPatient
 │ ├TEncounter.SetLocation
 │ ├TfrmFrame.DisplayEncounterText...
 │ └TEncounter.EncounterSwitch...
 ├CurrentLocationForPatient
 ├TSigItems.SaveSettings
 │ └SaveCoPayStatus
 ├SendOrders
 ├TChanges.Locate
 ├NotifyOtherApps
 │ ├AppNotificationEnabled
 │ │ └TNotifyAppsThread.CreateThread
 │ └TNotifyAppsThread.ResumeIfIdle
 ├OrdersSignedOrReleased
 ├GetOrderStatus
 ├CheckForChangeFromLCtoWCOnRelease
 │ └FormatLCtoWCDisplayTextOnRelease
 │   └GetLCtoWCInstructions
 ├ReportBox...
 ├PrintOrdersOnSignReleaseMult
 │ └PrintOrdersOnSignRelease
 │   ├CurrentLocationForPatient
 │   ├TEncounter.SetLocation
 │   ├CommonLocationForOrders
 │   ├LookupLocation
 │   │ └TfrmBase508Form.Create...
 │   ├TfrmFrame.DisplayEncounterText...
 │   ├SetupOrdersPrint
 │   │ ├TfrmBase508Form.Create...
 │   │ ├OrderPrintDeviceInfo
 │   │ └TfrmOrdersPrint.SetupControls
 │   │   └TfrmOrdersPrint.SetupPrompting
 │   ├PrintOrdersOnReview
 │   └PrintServiceCopies
 ├PrintOrdersOnSignRelease...
 ├UpdateUnsignedOrderAlerts
 ├TNotifications.GetFollowUp
 ├UnsignedOrderAlertFollowup
 ├UpdateExpiringMedAlerts
 ├UpdateUnverifiedMedAlerts
 ├UpdateUnverifiedOrderAlerts
 ├TfrmNotes.SaveSignItem
 │ ├TfrmFrame.GetTimedOut...
 │ ├TfrmNotes.SaveCurrentNote
 │ │ └TfrmNotes.SaveEditedNote
 │ │   ├TfrmNotes.tvNotesChange
 │ │   │ ├CanBeAttached
 │ │   │ ├CanReceiveAttachment
 │ │   │ ├TraverseTree
 │ │   │ │ ├ContextMatch
 │ │   │ │ ├TextFound
 │ │   │ │ ├AddListViewItem
 │ │   │ │ └..(rec)..
 │ │   │ ├TfrmNotes.lvNotesSelectItem
 │ │   │ │ └TfrmNotes.lstNotesClick
 │ │   │ │   ├UpdateReminderFinish
 │ │   │ │   │ └TfrmRemDlg.UpdateButtons
 │ │   │ │   │   ├TfrmRemDlg.BackReminder
 │ │   │ │   │   │ └TfrmRemDlg.GetCurReminderList
 │ │   │ │   │   │   └TReminderDialog.GetIEN
 │ │   │ │   │   └TfrmRemDlg.NextReminder
 │ │   │ │   │     └TfrmRemDlg.GetCurReminderList...
 │ │   │ │   ├TfrmNotes.UpdateFormForInput
 │ │   │ │   │ └TimedOut
 │ │   │ │   ├LoadDocumentText
 │ │   │ │   ├TfrmReminderTree.EnableActions
 │ │   │ │   │ ├ReminderDialogActive
 │ │   │ │   │ ├NewRemCoverSheetListActive
 │ │   │ │   │ └CanEditAllRemCoverSheetLists
 │ │   │ │   │   └HasMenuOptionAccess
 │ │   │ │   ├TfrmNotes.DisplayPCE
 │ │   │ │   │ ├TPCEData.AddStrData
 │ │   │ │   │ │ ├Add
 │ │   │ │   │ │ ├TPCEData.StrVisitType
 │ │   │ │   │ │ │ ├GetPCEDataText
 │ │   │ │   │ │ │ │ └GetDiagnosisText
 │ │   │ │   │ │ │ ├TPCEProc.ModText
 │ │   │ │   │ │ │ │ └ModifierName
 │ │   │ │   │ │ │ │   └ModifierIdx
 │ │   │ │   │ │ │ │     ├TPCEData.VisitDateTime
 │ │   │ │   │ │ │ │     │ └TPCEData.IsSecondaryVisit
 │ │   │ │   │ │ │ │     ├FMToday
 │ │   │ │   │ │ │ │     │ └FMNow
 │ │   │ │   │ │ │ │     └MixedCaseModifier
 │ │   │ │   │ │ │ └TPCEData.StrVisitType
 │ │   │ │   │ │ │   └AddTxt
 │ │   │ │   │ │ ├TPCEData.StrDiagnoses
 │ │   │ │   │ │ │ └GetPCEDataText...
 │ │   │ │   │ │ ├TPCEData.StrProcedures
 │ │   │ │   │ │ │ ├GetPCEDataText...
 │ │   │ │   │ │ │ └TPCEProc.ModText...
 │ │   │ │   │ │ ├TPCEData.StrImmunizations
 │ │   │ │   │ │ │ └GetPCEDataText...
 │ │   │ │   │ │ ├TPCEData.StrSkinTests
 │ │   │ │   │ │ │ └GetPCEDataText...
 │ │   │ │   │ │ ├TPCEData.StrPatientEds
 │ │   │ │   │ │ │ └GetPCEDataText...
 │ │   │ │   │ │ ├TPCEData.StrHealthFactors
 │ │   │ │   │ │ │ └GetPCEDataText...
 │ │   │ │   │ │ └TPCEData.StrExams
 │ │   │ │   │ │   └GetPCEDataText...
 │ │   │ │   │ ├GetVitalsFromDate
 │ │   │ │   │ │ ├TPCEData.IsSecondaryVisit
 │ │   │ │   │ │ └GetVitalsFromEncDateTime
 │ │   │ │   │ ├TPCEData.AddVitalData
 │ │   │ │   │ │ └FormatVitalForNote
 │ │   │ │   │ │   └ConvertVitalData
 │ │   │ │   │ ├TfrmNotes.ShowPCEButtons
 │ │   │ │   │ │ ├TfrmFrame.GetTimedOut...
 │ │   │ │   │ │ ├AnytimeEncounters
 │ │   │ │   │ │ ├CanEditPCE
 │ │   │ │   │ │ │ ├GetAskPCE
 │ │   │ │   │ │ │ └FutureEncounter
 │ │   │ │   │ │ │   └FMToday...
 │ │   │ │   │ │ └GetAskPCE
 │ │   │ │   │ ├TfrmNotes.ShowPCEControls
 │ │   │ │   │ ├InteractiveRemindersActive
 │ │   │ │   │ │ └GetRemindersActive
 │ │   │ │   │ ├GetReminderStatus
 │ │   │ │   │ ├FutureEncounter...
 │ │   │ │   │ ├TfrmDrawers.DisplayDrawers
 │ │   │ │   │ │ ├TfrmDrawers.EnableDrawers
 │ │   │ │   │ │ │ ├TfrmDrawers.EnableDrawer
 │ │   │ │   │ │ │ │ ├TfrmDrawers.GetDrawerControls
 │ │   │ │   │ │ │ │ ├TfrmDrawers.OpenDrawer
 │ │   │ │   │ │ │ │ │ ├TfrmDrawers.StartInternalResize
 │ │   │ │   │ │ │ │ │ ├TfrmDrawers.GetDrawerControls
 │ │   │ │   │ │ │ │ │ ├TfrmDrawers.SetSplitterActive
 │ │   │ │   │ │ │ │ │ ├TfrmDrawers.EndInternalResize
 │ │   │ │   │ │ │ │ │ └TfrmDrawers.ResizeToVisible
 │ │   │ │   │ │ │ │ │   ├AllCtrls
 │ │   │ │   │ │ │ │ │   │ └TfrmDrawers.GetDrawerControls
 │ │   │ │   │ │ │ │ │   ├TfrmDrawers.GetDrawerControls
 │ │   │ │   │ │ │ │ │   ├TfrmDrawers.ButtonHeights
 │ │   │ │   │ │ │ │ │   ├TfrmDrawers.MinDrawerControlHeight
 │ │   │ │   │ │ │ │ │   ├TfrmDrawers.StartInternalResize
 │ │   │ │   │ │ │ │ │   └TfrmDrawers.EndInternalResize
 │ │   │ │   │ │ │ │ └TfrmDrawers.ResizeToVisible...
 │ │   │ │   │ │ │ └TfrmDrawers.ResizeToVisible...
 │ │   │ │   │ │ ├TfrmDrawers.ShowDrawers
 │ │   │ │   │ │ │ ├TfrmDrawers.OpenDrawer...
 │ │   │ │   │ │ │ ├TfrmDrawers.GetDrawerControls
 │ │   │ │   │ │ │ ├TfrmDrawers.ResizeToVisible...
 │ │   │ │   │ │ │ ├NotifyWhenRemindersChange
 │ │   │ │   │ │ │ ├TfrmDrawers.RemindersChanged
 │ │   │ │   │ │ │ │ ├TfrmDrawers.EnableDrawer...
 │ │   │ │   │ │ │ │ ├GetReminderStatus
 │ │   │ │   │ │ │ │ ├BuildReminderTree
 │ │   │ │   │ │ │ │ │ ├GetImageIndex
 │ │   │ │   │ │ │ │ │ ├RemContextPopup
 │ │   │ │   │ │ │ │ │ │ ├ReminderMenu
 │ │   │ │   │ │ │ │ │ │ │ ├SetReminderPopupDlgRoutine
 │ │   │ │   │ │ │ │ │ │ │ │ └ReminderTreePopupDlg
 │ │   │ │   │ │ │ │ │ │ │ │   └ReminderMenuBuilder
 │ │   │ │   │ │ │ │ │ │ │ │     ├Add
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderClinMaintClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├ReportBox...
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├DetailReminder
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ │ └InteractiveRemindersActive...
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └ReminderName
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   └TReminderDialog.GetPrintName
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderEduClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├ReportBox...
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └EducationTopicDetail
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderInqClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├ReportBox...
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├ReminderInquiry
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └ReminderName...
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderWebClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├GotoWebPage
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └GetWebPageAddress
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderEvalClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └EvalReminder
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   ├EvaluateReminder
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   │ └EvaluateReminders
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   ├ReminderEvaluated
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   └ReminderName...
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├ReminderViewFolderClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ ├GetRemFolders
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ │ └GetReminderFolders
 │ │   │ │   │ │ │ │ │ │ │ │     │ │ └SetRemFolders
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   ├BeginReminderUpdate
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   ├SetReminderFolders
 │ │   │ │   │ │ │ │ │ │ │ │     │ │   └EndReminderUpdate
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├GetRemFolders...
 │ │   │ │   │ │ │ │ │ │ │ │     │ └ReminderIconLegendClicked
 │ │   │ │   │ │ │ │ │ │ │ │     │   └ShowIconLegend
 │ │   │ │   │ │ │ │ │ │ │ │     │     ├TfrmBase508Form.Create...
 │ │   │ │   │ │ │ │ │ │ │ │     │     ├TfrmFrame.TabExists
 │ │   │ │   │ │ │ │ │ │ │ │     │     ├TfrmIconLegend.ShowTab
 │ │   │ │   │ │ │ │ │ │ │ │     │     └TfrmIconLegend.SetFontSize
 │ │   │ │   │ │ │ │ │ │ │ │     │       └TfrmIconLegend.SnapLabels
 │ │   │ │   │ │ │ │ │ │ │ │     ├GetEducationTopics
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├GetEducationTopicsForReminder
 │ │   │ │   │ │ │ │ │ │ │ │     │ └GetEducationSubtopics
 │ │   │ │   │ │ │ │ │ │ │ │     ├AddEducationTopics
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├GetEducationTopics...
 │ │   │ │   │ │ │ │ │ │ │ │     │ ├Add...
 │ │   │ │   │ │ │ │ │ │ │ │     │ └..(rec)..
 │ │   │ │   │ │ │ │ │ │ │ │     ├GetWebPages
 │ │   │ │   │ │ │ │ │ │ │ │     │ └GetReminderWebPages
 │ │   │ │   │ │ │ │ │ │ │ │     └AddWebPages
 │ │   │ │   │ │ │ │ │ │ │ │       ├Add...
 │ │   │ │   │ │ │ │ │ │ │ │       └GetWebPageName
 │ │   │ │   │ │ │ │ │ │ │ └SetReminderPopupRoutine
 │ │   │ │   │ │ │ │ │ │ │   └ReminderTreePopup
 │ │   │ │   │ │ │ │ │ │ │     └ReminderMenuBuilder...
 │ │   │ │   │ │ │ │ │ │ └EvaluateCategoryClicked
 │ │   │ │   │ │ │ │ │ │   ├BeginReminderUpdate
 │ │   │ │   │ │ │ │ │ │   ├CheckReminders
 │ │   │ │   │ │ │ │ │ │   │ ├EvaluateReminders
 │ │   │ │   │ │ │ │ │ │   │ └ReminderEvaluated
 │ │   │ │   │ │ │ │ │ │   └EndReminderUpdate
 │ │   │ │   │ │ │ │ │ ├GetRemFolders...
 │ │   │ │   │ │ │ │ │ ├Add2Tree
 │ │   │ │   │ │ │ │ │ │ └GetRemFolders...
 │ │   │ │   │ │ │ │ │ ├TReminderDialog.GetIEN
 │ │   │ │   │ │ │ │ │ ├TReminderDialog.GetPrintName
 │ │   │ │   │ │ │ │ │ ├TReminder.GetDueDateStr
 │ │   │ │   │ │ │ │ │ ├TReminder.GetLastDateStr
 │ │   │ │   │ │ │ │ │ ├TReminder.GetStatus
 │ │   │ │   │ │ │ │ │ └TReminderDialog.Processing
 │ │   │ │   │ │ │ │ │   └CheckItem
 │ │   │ │   │ │ │ │ │     ├ChildrenChecked
 │ │   │ │   │ │ │ │ │     │ └CheckItem...
 │ │   │ │   │ │ │ │ │     └TRemDlgElement.Add2PN
 │ │   │ │   │ │ │ │ │       ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │ │       └TRemDlgElement.AddData
 │ │   │ │   │ │ │ │ │         ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │ │         ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │ │         ├TRemData.AddData
 │ │   │ │   │ │ │ │ │         │ ├Add
 │ │   │ │   │ │ │ │ │         │ │ ├Code2DataType
 │ │   │ │   │ │ │ │ │         │ │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │ │         │ │ ├TRemPrompt.GetValue
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │ │         │ │ │ ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.RemDataActive
 │ │   │ │   │ │ │ │ │         │ │ │ │ └TRemPrompt.CompareActiveDate
 │ │   │ │   │ │ │ │ │         │ │ │ └TRemPrompt.RemDataChoiceActive
 │ │   │ │   │ │ │ │ │         │ │ ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │ │         │ │ ├ValidateGAFDate
 │ │   │ │   │ │ │ │ │         │ │ │ ├TPatient.GetDateDied
 │ │   │ │   │ │ │ │ │         │ │ │ │ └DateOfDeath
 │ │   │ │   │ │ │ │ │         │ │ │ └FMToday...
 │ │   │ │   │ │ │ │ │         │ │ ├TPCEProviderList.PCEProvider
 │ │   │ │   │ │ │ │ │         │ │ │ ├Check
 │ │   │ │   │ │ │ │ │         │ │ │ │ └TPCEProviderList.IndexOfProvider
 │ │   │ │   │ │ │ │ │         │ │ │ └TPCEProviderList.PrimaryIEN
 │ │   │ │   │ │ │ │ │         │ │ │   └TPCEProviderList.GetPrimaryIdx
 │ │   │ │   │ │ │ │ │         │ │ ├AddPrompt
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.PromptType
 │ │   │ │   │ │ │ │ │         │ │ │ │ └Code2PromptType
 │ │   │ │   │ │ │ │ │         │ │ │ ├TPCEProviderList.PCEProvider...
 │ │   │ │   │ │ │ │ │         │ │ │ ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.VitalValue
 │ │   │ │   │ │ │ │ │         │ │ │ │ └TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.VitalType
 │ │   │ │   │ │ │ │ │         │ │ │ │ ├Code2VitalType
 │ │   │ │   │ │ │ │ │         │ │ │ │ └TRemData.InternalValue
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.VitalUnitValue
 │ │   │ │   │ │ │ │ │         │ │ │ │ ├TRemPrompt.VitalType...
 │ │   │ │   │ │ │ │ │         │ │ │ │ └TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │ │         │ │ │ ├ConvertVital
 │ │   │ │   │ │ │ │ │         │ │ │ ├FormatVitalForNote...
 │ │   │ │   │ │ │ │ │         │ │ │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │ │         │ │ │ └TRemDlgElement.Historical
 │ │   │ │   │ │ │ │ │         │ │ └GetPCEDataText...
 │ │   │ │   │ │ │ │ │         │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │ │         │ └TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │ │         ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │ │         └..(rec)..
 │ │   │ │   │ │ │ │ └TfrmDrawers.tvRemindersMouseUp
 │ │   │ │   │ │ │ │   ├ViewReminderDialog
 │ │   │ │   │ │ │ │   │ ├ViewRemDlg
 │ │   │ │   │ │ │ │   │ │ └ViewRemDlgFromForm
 │ │   │ │   │ │ │ │   │ │   ├TfrmNotes.AssignRemForm
 │ │   │ │   │ │ │ │   │ │   │ ├TfrmNotes.CanFinishReminder
 │ │   │ │   │ │ │ │   │ │   │ └TfrmNotes.DisplayPCE...
 │ │   │ │   │ │ │ │   │ │   ├FutureEncounter...
 │ │   │ │   │ │ │ │   │ │   ├TfrmConsults.AssignRemForm
 │ │   │ │   │ │ │ │   │ │   │ ├TfrmConsults.CanFinishReminder
 │ │   │ │   │ │ │ │   │ │   │ └TfrmConsults.DisplayPCE
 │ │   │ │   │ │ │ │   │ │   │   ├TPCEData.AddStrData...
 │ │   │ │   │ │ │ │   │ │   │   ├GetVitalsFromDate...
 │ │   │ │   │ │ │ │   │ │   │   ├TPCEData.AddVitalData...
 │ │   │ │   │ │ │ │   │ │   │   ├CanEditPCE...
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmConsults.ShowPCEControls
 │ │   │ │   │ │ │ │   │ │   │   ├InteractiveRemindersActive...
 │ │   │ │   │ │ │ │   │ │   │   ├GetReminderStatus
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmDrawers.DisplayDrawers...
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmDrawers.DisplayDrawers
 │ │   │ │   │ │ │ │   │ │   │   │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   ├ActOnDocument
 │ │   │ │   │ │ │ │   │ │   │   ├TPCEData.PCEForNote
 │ │   │ │   │ │ │ │   │ │   │   │ ├TEncounter.GetVisitStr
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TEncounter.GetVisitCategory
 │ │   │ │   │ │ │ │   │ │   │   │ ├VisitStrForNote
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEData.GetVisitString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEData.CopyPCEData
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEData.Clear
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├ClearList
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TPCEProc.Clear
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TPCEItem.Clear
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   └TPCEItem.SetComment
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TPCEProviderList.Clear
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   └TPCEProviderList.GetPrimaryIdx
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEProc.CopyProc
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TPCEItem.SetComment
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEProviderList.Assign
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEData.CopyPCEItems
 │ │   │ │   │ │ │ │   │ │   │   │ │   └TPCEItem.Assign
 │ │   │ │   │ │ │ │   │ │   │   │ │     └TPCEItem.SetComment
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEData.IsSecondaryVisit
 │ │   │ │   │ │ │ │   │ │   │   │ ├GetLocSecondaryVisitCode
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEData.Clear...
 │ │   │ │   │ │ │ │   │ │   │   │ ├LoadPCEDataForNote
 │ │   │ │   │ │ │ │   │ │   │   │ ├ListVisitTypeByLoc
 │ │   │ │   │ │ │ │   │ │   │   │ ├SetRPCEncLocation
 │ │   │ │   │ │ │ │   │ │   │   │ ├SCCValue
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEProviderList.Add
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEProviderList.GetPrimaryIdx
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEProviderList.IndexOfProvider
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEProviderList.SetPrimaryIdx
 │ │   │ │   │ │ │ │   │ │   │   │ │   ├TPCEProviderList.GetPrimaryIdx
 │ │   │ │   │ │ │ │   │ │   │   │ │   └TPCEProviderList.SetPrimary
 │ │   │ │   │ │ │ │   │ │   │   │ ├AppendComment
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEDiag.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEItem.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │   └TPCEItem.SetComment
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEProc.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEImm.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCESkin.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   │ │ └StrToFMDateTime
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEPat.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   │ ├TPCEHealth.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │ │ └TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   │ └TPCEExams.SetFromString
 │ │   │ │   │ │ │ │   │ │   │   │   └TPCEItem.SetFromString...
 │ │   │ │   │ │ │ │   │ │   │   └GetVitalsFromNote
 │ │   │ │   │ │ │ │   │ │   │     ├TPCEData.IsSecondaryVisit
 │ │   │ │   │ │ │ │   │ │   │     ├GetVitalsFromEncDateTime
 │ │   │ │   │ │ │ │   │ │   │     └GetVitalFromNoteIEN
 │ │   │ │   │ │ │ │   │ │   ├TfrmBase508Form.Create...
 │ │   │ │   │ │ │ │   │ │   ├TfrmRemDlg.SetFontSize
 │ │   │ │   │ │ │ │   │ │   │ └TfrmRemDlg.BuildControls
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmRemDlg.GetBox
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmRemDlg.ClearControls
 │ │   │ │   │ │ │ │   │ │   │   │ ├WipeOutControls
 │ │   │ │   │ │ │ │   │ │   │   │ │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   │ └TfrmRemDlg.GetBox
 │ │   │ │   │ │ │ │   │ │   │   ├TReminderDialog.GetPrintName
 │ │   │ │   │ │ │ │   │ │   │   ├SetActiveVars
 │ │   │ │   │ │ │ │   │ │   │   │ └IsOnBox
 │ │   │ │   │ │ │ │   │ │   │   ├TReminderDialog.BuildControls
 │ │   │ │   │ │ │ │   │ │   │   │ ├TRemDlgElement.BuildControls
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.TrueIndent
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.Indent
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.Box
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TRemDlgElement.ChildrenIndent
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├GetPanel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├GetDialogEntry
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TTemplateDialogEntry.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   ├TDlgFieldPanel.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   ├GetTemplateField
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   │ ├LoadTemplateFieldByIEN
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   │ ├LoadTemplateField
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   │ └TTemplateField.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   │   ├TemplateFieldCode2Field
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   │   └TemplateDateCode2DateType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   ├TTemplateField.GetRequired
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   └TTemplateField.CreateDialogControls
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogFieldEdit.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TTemplateField.GetRequired
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├ht
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├wdth
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TTemplateField.Width
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └StripEmbedded
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TTemplateDialogEntry.DoChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogComboBox.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├StripEmbedded
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TfraTemplateFieldButton.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ ├TfraTemplateFieldButton.ButtonKeyDown
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ │ └TfraTemplateFieldButton.pnlBtnMouseDown
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ │   ├TfraTemplateFieldButton.GetButtonText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ │   └TfraTemplateFieldButton.SetButtonText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ ├TfraTemplateFieldButton.ButtonKeyUp
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ │ └TfraTemplateFieldButton.pnlBtnMouseUp
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TfraTemplateFieldButton.SetButtonText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogCheckBox.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├UpdateIndents
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └wdth
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├StrToFMDateTime
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogDateCombo.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogDateBox.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogNumber.CreatePanel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TTemplateDialogEntry.UpDownChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ ├EnsureText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TTemplateDialogEntry.DoChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogHyperlinkLabel.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ ├TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogHyperlinkLabel.KeyPressed
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │   └TCPRSDialogHyperlinkLabel.Clicked
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │     └GotoWebPage
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     ├TCPRSDialogHyperlinkLabel.Init
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     │ └TCPRSDialogHyperlinkLabel.Clicked...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │     └TCPRSDialogRichEdit.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │       └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TTemplateDialogEntry.SetFieldValues
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TTemplateDialogEntry.SetControlText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │   └TfraTemplateFieldButton.SetButtonText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TTemplateDialogEntry.SetAutoDestroyOnPanelFree
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └PanelDestroy
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.FieldPanelChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ ├TReminderDialog.BeginTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ ├TTemplateDialogEntry.GetFieldValues
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │ └TTemplateDialogEntry.GetControlText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │   ├GetTemplateField...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │   ├GetOriginalItem
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │   │ ├GetTemplateField...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │   │ └StripEmbedded
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ │   └TfraTemplateFieldButton.GetButtonText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TReminderDialog.EndTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TTemplateDialogEntry.GetPanel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├Init
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TTemplateDialogEntry.KillLabels
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_CurrentCheckBox
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   └ScreenReaderSystem_Stop
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │     ├UpdateCheckBox
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │     ├UpdatePending
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │     └ScreenReaderSystem_Clear
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├Text508Work
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TTemplateDialogEntry.StripCode
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├StripSRCode
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_Continue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TTemplateDialogEntry.StripCode
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├NextLine
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├DoLabel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├Add2TabOrder
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_CurrentLabel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_AddText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├Ctrl508Work
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_CurrentLabel...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_AddText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├Add2TabOrder
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_CurrentComponent
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   ├UpdateCheckBox
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   ├UpdatePending
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   └ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TTemplateDialogEntry.SetFieldValues...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   └ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.EntryID
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├CRLFText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └InitText
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├UpdatePrompts
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.FieldPanelEntered
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TDlgFieldPanel.SetTheFocus
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.FieldPanelExited
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ │ └TDlgFieldPanel.SetTheFocus
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └AddPrompts
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.PromptOK
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.RemDataActive...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TRemPrompt.CompareActiveDate
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.Required
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TCPRSDialogFieldEdit.Create...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.EditKeyPress
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.PromptChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TReminderDialog.BeginTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├FMToday...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.Caption
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └AssignFieldIDs
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │   └GetNewFieldID
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├SelectDevice
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TfrmBase508Form.Create...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └GetDefaultPrinter
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├FMNow
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├MHDLLFound
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └CheckforMHDll
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │   ├LoadMHDLL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │   └UnloadMHDLL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TReminderDialog.BeginNeedRedraw
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.SetValue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├FMToday...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemData.InternalValue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.RemDataActive...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.RemDataChoiceActive
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├IsSyncPrompt
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPCERoot.Sync
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ ├TRemDlgElement.IsChecked
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ ├TRemPrompt.SetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ └TRemDlgElement.cbClicked
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   ├TReminderDialog.BeginTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   ├TReminderDialog.BeginNeedRedraw
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   ├TRemDlgElement.SetChecked
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├TRemDlgElement.GetData
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├GetDialogPrompts
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemDlgElement.FindingType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ │ └TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TReminderDialog.GetDlgSL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ │ ├TReminderDialog.GetIEN
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ │ └GetDialogInfo
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ └TRemDlgElement.UpdateData
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TReminderDialog.GetDlgSL...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├Code2DataType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├MHTestsOK
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemData.Add2PN
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemDlgElement.OneValidCode
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPrompt.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ └TRemPrompt.CompareActiveDate
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemDlgElement.setActiveDates
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPCERoot.GetRoot
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├Code2VitalType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├MHDLLFound...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├Code2PromptType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.InitValue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPrompt.InternalValue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├GetPCECodes
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │ ├LoadHistLocations
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │ └CodeSetIndex
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   ├LoadImmSeriesItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   ├LoadImmReactionItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   ├LoadSkResultsItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   ├LoadPEDLevelItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   ├LoadHFLevelItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ │   └LoadXAMResultsItems
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├IsSyncPrompt
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPCERoot.GetValue
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ └TRemPrompt.SetValueFromParent
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │   └TRemPrompt.SetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├PrepText4NextLine
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   └ExpandTIUObjects
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     ├TdmodShared.BoilerplateOK
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     │ ├ErrCount
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     │ ├AddErr
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     │ └TdmodShared.LoadTIUObjects
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     │   └GetObjectList
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │     └GetTemplateText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │       └TEncounter.GetVisitStr...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├TRemDlgElement.Check4ChildrenSharedPrompts
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemDlgElement.ChildrenSharePrompts
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemDlgElement.GetData...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ └TRemPrompt.CanShare
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.Required...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   ├TRemPrompt.Add2PN
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   │ └TRemPrompt.PromptOK...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │   └TRemPrompt.Caption...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├TRemDlgElement.ChildrenRequired
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├UpdateForcedValues
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemDlgElement.IsChecked
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ ├TRemPrompt.SetValueFromParent...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├IsSyncPrompt
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │ └TRemPCERoot.UnSync
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   │   └TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   ├TReminderDialog.EndNeedRedraw
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │   └TReminderDialog.EndTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TReminderDialog.Visible
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ │ └CurrentReminderInDialog
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ ├TRemPrompt.VitalValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └TRemPrompt.VitalUnitValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TReminderDialog.EndNeedRedraw
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TReminderDialog.EndTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TCPRSDialogComboBox.Create...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.ComboBoxKeyDown
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├GetComboBoxMinMax
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├PCELoadORCombo
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └PCELoadORComboData
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   ├GetPCECodes...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   └GetComboBoxMinMax
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├GetDefLocations
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemData.DisplayWHResults
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├NextLine
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TCPRSDialogButton.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.DoWHReport
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ReportBox...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├ScreenReaderSupport
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_CurrentComponent...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TCPRSDialogCheckBox.Create...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├ProcessLabel
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.Caption...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ScreenReaderSystem_CurrentLabel...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ScreenReaderSystem_AddText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.ViewWHText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └ReportBox...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TCPRSDialogDateCombo.Create...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.Caption...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemDlgElement.ParentCBEnter
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemDlgElement.ParentCBExit
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemDlgElement.SubCommentChange
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.Caption...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TRemPrompt.SetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.VitalType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├InitPainCombo
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.VitalValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TVitalEdit.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.VitalVerify
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ConvertHeight2Inches
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └VitalInvalid
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   ├VerifyVital
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   ├IsNumericWeight
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │   └VitalErrorText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TVitalComboBox.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TCPRSDialogComponent.Create
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├VitalControlTag
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TVitalComboBox.SelectByID
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.VitalUnitValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TPCEData.VisitDateTime...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TReminderDialog.ComboBoxCheckedText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TReminderDialog.ComboBoxResized
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├MHDLLFound...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.DoMHTest
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├MHTestAuthorized
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemData.Narrative
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TReminderDialog.BeginTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemDlgElement.IncludeMHTestInPN
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├PerformMHTest
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │ └TfrmMHTest.CallMHDLL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │   ├LoadMHDLL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ │   └UnloadMHDLL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TimedOut
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├GetMHResultText
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.SetValue...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├MentalHealthTestResults
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├ExpandTIUObjects...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TReminderDialog.EndTextChanged
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.ForcedCaption
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.Caption...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├TRemPrompt.VitalType...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └TRemData.Narrative
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├GAFURL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.GAFHelp
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ ├GotoWebPage
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   │ └GAFURL
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemPrompt.SameLine
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├TRemDlgElement.TrueIndent...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├ScreenReaderSystem_CurrentComponent...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   ├ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ │ │   └TRemDlgElement.Enabled
 │ │   │ │   │ │ │ │   │ │   │   │ │ │     └TRemDlgElement.EnableChildren
 │ │   │ │   │ │ │ │   │ │   │   │ │ │       ├..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   │ │ │       └TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.cbClicked...
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.cbEntered
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └UnfocusableControlEnter
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.ParentCBExit
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.FieldPanelKeyPress
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TRemDlgElement.FieldPanelOnClick
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.FieldPanelOnClick
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.FieldPanelLabelOnClick
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TRemDlgElement.FieldPanelOnClick
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.ChildrenRequired
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.ShowChildren
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TRemDlgElement.HideChildren
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.Box
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.ChildrenIndent
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.BoxCaption
 │ │   │ │   │ │ │ │   │ │   │   │ │ │ └TRemDlgElement.Box
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.EnableChildren...
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├..(rec)..
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├AddPrompts...
 │ │   │ │   │ │ │ │   │ │   │   │ │ ├TRemDlgElement.SubCommentChange...
 │ │   │ │   │ │ │ │   │ │   │   │ │ └ScreenReaderSystem_Stop...
 │ │   │ │   │ │ │ │   │ │   │   │ └TReminderDialog.GetPrintName
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmRemDlg.BoxUpdateDone
 │ │   │ │   │ │ │ │   │ │   │   │ └TfrmRemDlg.ClearControls...
 │ │   │ │   │ │ │ │   │ │   │   ├IsOnBox
 │ │   │ │   │ │ │ │   │ │   │   ├TfrmRemDlg.ControlsChanged
 │ │   │ │   │ │ │ │   │ │   │   │ └TfrmRemDlg.GetBox
 │ │   │ │   │ │ │ │   │ │   │   └TfrmRemDlg.UpdateText
 │ │   │ │   │ │ │ │   │ │   │     ├TReminderDialog.AddText
 │ │   │ │   │ │ │ │   │ │   │     │ ├TRemDlgElement.AddText
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├TRemDlgElement.Add2PN...
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├TRemDlgElement.IndentPNLevel
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├..(rec)..
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ └TRemDlgElement.IndentChildrenInPN
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├CurrentReminderInDialog
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├ResolveTemplateFields
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├TTemplateDialogEntry.GetControlText...
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├GetTemplateField...
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├AddNewTxt
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ └WordWrapText
 │ │   │ │   │ │ │ │   │ │   │     │ │ │   └WrappedText
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├TRemDlgElement.GetFieldValues
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├TRemDlgElement.GetTemplateFieldValues
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├GetTemplateField...
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├TTemplateField.GetTemplateFieldDefault
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ │ └StripEmbedded
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ └AddNewTxt
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├StripScreenReaderCodes
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├WordWrap
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ ├StripScreenReaderCodes
 │ │   │ │   │ │ │ │   │ │   │     │ │ │ └InitText
 │ │   │ │   │ │ │ │   │ │   │     │ │ ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │     │ │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │   │     │ ├TReminderDialog.GetPrintName
 │ │   │ │   │ │ │ │   │ │   │     │ └StripScreenReaderCodes
 │ │   │ │   │ │ │ │   │ │   │     ├ClinRemText
 │ │   │ │   │ │ │ │   │ │   │     │ └GetProgressNoteHeader
 │ │   │ │   │ │ │ │   │ │   │     └TPCEData.StrVisitType...
 │ │   │ │   │ │ │ │   │ │   ├UpdateReminderFinish...
 │ │   │ │   │ │ │ │   │ │   ├TfrmRemDlg.ProcessTemplate
 │ │   │ │   │ │ │ │   │ │   │ ├TReminderDialog.Create
 │ │   │ │   │ │ │ │   │ │   │ │ └TReminderDialog.BaseCreate
 │ │   │ │   │ │ │ │   │ │   │ │   ├TReminderDialog.GetDlgSL...
 │ │   │ │   │ │ │ │   │ │   │ │   ├TRemDlgElement.Create
 │ │   │ │   │ │ │ │   │ │   │ │   ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │   │ │   ├TRemDlgElement.Historical
 │ │   │ │   │ │ │ │   │ │   │ │   ├TRemDlgElement.FindingType...
 │ │   │ │   │ │ │ │   │ │   │ │   ├PrepText4NextLine
 │ │   │ │   │ │ │ │   │ │   │ │   ├ExpandTIUObjects...
 │ │   │ │   │ │ │ │   │ │   │ │   ├AssignFieldIDs...
 │ │   │ │   │ │ │ │   │ │   │ │   ├TRemDlgElement.SetChecked...
 │ │   │ │   │ │ │ │   │ │   │ │   └TRemDlgElement.UpdateData...
 │ │   │ │   │ │ │ │   │ │   │ ├TTemplate.ReminderWipe
 │ │   │ │   │ │ │ │   │ │   │ ├TfrmRemDlg.ClearControls...
 │ │   │ │   │ │ │ │   │ │   │ ├TfrmRemDlg.BuildControls...
 │ │   │ │   │ │ │ │   │ │   │ ├TfrmRemDlg.UpdateText...
 │ │   │ │   │ │ │ │   │ │   │ └TfrmRemDlg.UpdateButtons...
 │ │   │ │   │ │ │ │   │ │   └TfrmRemDlg.ProcessReminder
 │ │   │ │   │ │ │ │   │ │     ├GetReminder
 │ │   │ │   │ │ │ │   │ │     │ └TReminder.Create
 │ │   │ │   │ │ │ │   │ │     │   └TReminderDialog.BaseCreate...
 │ │   │ │   │ │ │ │   │ │     ├TReminderDialog.FinishProblems
 │ │   │ │   │ │ │ │   │ │     │ ├TReminderDialog.Processing...
 │ │   │ │   │ │ │ │   │ │     │ ├TRemDlgElement.FinishProblems
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.GetValue...
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.PromptType...
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.PromptOK...
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.Forced
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.Required...
 │ │   │ │   │ │ │ │   │ │     │ │ ├WordWrap...
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemPrompt.ForcedCaption...
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemDlgElement.ElemType
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemDlgElement.ChildrenRequired
 │ │   │ │   │ │ │ │   │ │     │ │ ├TRemDlgElement.BoxCaption...
 │ │   │ │   │ │ │ │   │ │     │ │ └..(rec)..
 │ │   │ │   │ │ │ │   │ │     │ ├TRemDlgElement.GetFieldValues...
 │ │   │ │   │ │ │ │   │ │     │ ├TReminderDialog.AddText...
 │ │   │ │   │ │ │ │   │ │     │ └AreTemplateFieldsRequired
 │ │   │ │   │ │ │ │   │ │     │   ├GetTemplateField...
 │ │   │ │   │ │ │ │   │ │     │   ├TTemplateField.GetRequired
 │ │   │ │   │ │ │ │   │ │     │   └TTemplateDialogEntry.GetControlText...
 │ │   │ │   │ │ │ │   │ │     ├TfrmRemDlg.ClearControls...
 │ │   │ │   │ │ │ │   │ │     ├TfrmRemDlg.BuildControls...
 │ │   │ │   │ │ │ │   │ │     ├TfrmRemDlg.UpdateText...
 │ │   │ │   │ │ │ │   │ │     ├TfrmRemDlg.PositionTrees
 │ │   │ │   │ │ │ │   │ │     └TfrmRemDlg.UpdateButtons...
 │ │   │ │   │ │ │ │   │ └HideReminderDialog
 │ │   │ │   │ │ │ │   └ReminderNode
 │ │   │ │   │ │ │ ├NotifyWhenProcessingReminderChanges
 │ │   │ │   │ │ │ ├TfrmDrawers.PositionToReminder
 │ │   │ │   │ │ │ ├RemoveNotifyRemindersChange
 │ │   │ │   │ │ │ └RemoveNotifyWhenProcessingReminderChanges
 │ │   │ │   │ │ └TfrmDrawers.SetSplitterActive
 │ │   │ │   │ ├ActOnDocument
 │ │   │ │   │ ├TPCEData.PCEForNote...
 │ │   │ │   │ └GetVitalsFromNote...
 │ │   │ │   └NotifyOtherApps...
 │ │   │ ├TfrmNotes.ShowPCEControls
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmNotes.ShowPCEButtons...
 │ │   │ └TfrmNotes.lstNotesClick...
 │ │   ├TfrmNotes.GetTitleText
 │ │   ├TfrmNotes.mnuActDeleteClick
 │ │   │ ├TfrmRemDlg.btnCancelClick
 │ │   │ │ └TfrmRemDlg.KillAll
 │ │   │ │   ├TfrmFrame.GetTimedOut...
 │ │   │ │   ├TReminderDialog.Processing...
 │ │   │ │   ├TReminderDialog.GetPrintName
 │ │   │ │   ├TReminderDialog.GetIEN
 │ │   │ │   ├RemoveMHTest
 │ │   │ │   │ ├LoadMHDLL
 │ │   │ │   │ └UnloadMHDLL
 │ │   │ │   └TfrmRemDlg.ResetProcessing
 │ │   │ │     ├TfrmRemDlg.ClearControls...
 │ │   │ │     ├TfrmRemDlg.PositionTrees
 │ │   │ │     └TfrmRemDlg.KillDlg
 │ │   │ ├ActOnDocument
 │ │   │ ├SelectDeleteReason
 │ │   │ │ ├JustifyDocumentDelete
 │ │   │ │ └TfrmBase508Form.Create...
 │ │   │ ├MakeNoteDisplayText
 │ │   │ ├TfrmNotes.LockConsultRequestAndNote
 │ │   │ │ ├TfrmConsults.ActiveEditOf
 │ │   │ │ │ └GetPackageRefForNote
 │ │   │ │ ├TChanges.Exist
 │ │   │ │ ├IsConsultTitle
 │ │   │ │ ├TitleForNote
 │ │   │ │ ├GetPackageRefForNote
 │ │   │ │ ├TfrmNotes.LockConsultRequest
 │ │   │ │ │ ├GetConsultOrderIEN
 │ │   │ │ │ └OrderCanBeLocked
 │ │   │ │ │   └LockOrder
 │ │   │ │ ├LockDocument
 │ │   │ │ └UnlockOrderIfAble
 │ │   │ │   └UnlockOrder
 │ │   │ ├JustifyDocumentDelete
 │ │   │ ├TfrmNotes.SaveCurrentNote...
 │ │   │ ├TfrmNotes.SetEditingIndex
 │ │   │ │ ├KillReminderDialog
 │ │   │ │ │ └TfrmRemDlg.ResetProcessing...
 │ │   │ │ └TfrmReminderTree.EnableActions...
 │ │   │ ├GetPackageRefForNote
 │ │   │ ├VisitStrForNote
 │ │   │ ├TfrmNotes.RemovePCEFromChanges
 │ │   │ │ ├VisitStrForNote
 │ │   │ │ └TChanges.Remove
 │ │   │ │   ├UnlockOrder
 │ │   │ │   └UnlockDocument
 │ │   │ ├DeleteDocument
 │ │   │ ├TChanges.Exist
 │ │   │ ├UnlockDocument
 │ │   │ ├TChanges.Remove...
 │ │   │ ├TfrmNotes.UnlockConsultRequest
 │ │   │ │ ├GetConsultIENforNote
 │ │   │ │ ├GetConsultOrderIEN
 │ │   │ │ └UnlockOrderIfAble...
 │ │   │ ├DeletePCE
 │ │   │ ├TfrmNotes.ClearEditControls
 │ │   │ │ ├TPCEData.Clear...
 │ │   │ │ └TfrmNotes.SetEditingIndex...
 │ │   │ ├TfrmNotes.LoadNotes
 │ │   │ │ ├KillDocTreeObjects
 │ │   │ │ │ └ResetDocTreeObjectStrings
 │ │   │ │ ├ListNotesForTree
 │ │   │ │ ├CreateListItemsForDocumentTree
 │ │   │ │ ├TfrmNotes.UpdateTreeView
 │ │   │ │ │ └BuildDocumentTree
 │ │   │ │ │   ├MakeNoteDisplayText
 │ │   │ │ │   ├MakeConsultNoteDisplayText
 │ │   │ │ │   ├MakeDCSummDisplayText
 │ │   │ │ │   ├MakeNoteTreeObject
 │ │   │ │ │   │ └MakeNoteDisplayText
 │ │   │ │ │   ├MakeConsultsNoteTreeObject
 │ │   │ │ │   │ ├MakeConsultNoteDisplayText
 │ │   │ │ │   │ └GetConsultOrderIEN
 │ │   │ │ │   ├MakeDCSummTreeObject
 │ │   │ │ │   │ └MakeDCSummDisplayText
 │ │   │ │ │   ├SetTreeNodeImagesAndFormatting
 │ │   │ │ │   │ ├ExternalName
 │ │   │ │ │   │ ├TextFound
 │ │   │ │ │   │ └MakeBold
 │ │   │ │ │   └..(rec)..
 │ │   │ │ ├TfrmNotes.SetNoteTreeLabel
 │ │   │ │ │ ├ExternalName
 │ │   │ │ │ └SetDateRangeText
 │ │   │ │ ├RemoveParentsWithNoChildren
 │ │   │ │ │ └KillDocTreeNode
 │ │   │ │ │   └ResetDocTreeObjectStrings
 │ │   │ │ └TfrmNotes.tvNotesChange...
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmNotes.ShowPCEControls
 │ │   │ └TfrmNotes.ShowPCEButtons...
 │ │   ├TPCEData.GetCPTRequired
 │ │   │ └TPCEData.NeededPCEData
 │ │   │   ├FutureEncounter...
 │ │   │   ├PromptForWorkload
 │ │   │   ├TPCEData.StandAlone
 │ │   │   │ └HasVisit
 │ │   │   ├TPCEData.GetHasCPTList
 │ │   │   │ └AddList
 │ │   │   │   └TPCEItem.HasCPTStr
 │ │   │   ├DataHasCPTCodes
 │ │   │   ├RequireExposures
 │ │   │   └EligbleConditions
 │ │   ├PutEditedNote
 │ │   │ └SetText
 │ │   │   └InitParams
 │ │   ├TfrmNotes.SetEditingIndex...
 │ │   └TfrmNotes.lstNotesClick...
 │ ├CosignDocument
 │ ├ActOnDocument
 │ ├NoteHasText
 │ ├LastSaveClean
 │ ├IsOK2Sign
 │ │ ├TPCEData.GetVisitString...
 │ │ ├VisitStrForNote
 │ │ ├TPCEData.OK2SignNote
 │ │ │ ├CanEditPCE...
 │ │ │ ├IsNonCountClinic
 │ │ │ ├IsCancelOrNoShow
 │ │ │ ├GetAskPCE
 │ │ │ ├TPCEData.NeededPCEData...
 │ │ │ ├TPCEProviderList.GetPrimaryIdx
 │ │ │ ├NoPrimaryPCEProvider
 │ │ │ │ ├TPCEProviderList.GetPrimaryIdx
 │ │ │ │ ├SetDefaultProvider
 │ │ │ │ │ ├InvalidPCEProviderTxt
 │ │ │ │ │ │ ├CheckActivePerson
 │ │ │ │ │ │ └IsUserAProvider
 │ │ │ │ │ ├TPCEData.PersonClassDate
 │ │ │ │ │ │ └FMToday...
 │ │ │ │ │ ├TEncounter.GetProviderName...
 │ │ │ │ │ ├DefaultProvider
 │ │ │ │ │ ├CheckActivePerson
 │ │ │ │ │ ├TIUSiteParams
 │ │ │ │ │ └TPCEProviderList.AddProvider
 │ │ │ │ │   └TPCEProviderList.Add...
 │ │ │ │ ├TfrmBase508Form.Create...
 │ │ │ │ ├TPCEProviderList.PendingIEN
 │ │ │ │ ├TPCEProviderList.PendingName
 │ │ │ │ ├TfrmPCEProvider.AskUser
 │ │ │ │ │ └TfrmPCEProvider.btnSelectClick
 │ │ │ │ └TPCEProviderList.AddProvider...
 │ │ │ ├TPCEProviderList.PendingIEN
 │ │ │ ├TPCEProviderList.IndexOfProvider
 │ │ │ ├TPCEProviderList.AddProvider...
 │ │ │ ├TPCEProviderList.PendingName
 │ │ │ ├Add
 │ │ │ ├ForcePCEEntry
 │ │ │ ├MissingProviderInfo
 │ │ │ │ ├TPCEData.Empty
 │ │ │ │ │ └TPCEProc.Empty
 │ │ │ │ ├TEncounter.NeedVisit
 │ │ │ │ ├TPCEData.SetEncUseCurr
 │ │ │ │ │ ├TEncounter.GetVisitCategory
 │ │ │ │ │ ├TPCEProviderList.SetPrimaryIdx...
 │ │ │ │ │ └SetRPCEncLocation
 │ │ │ │ └NoPrimaryPCEProvider...
 │ │ │ ├UpdatePCE
 │ │ │ │ ├TfrmBase508Form.Create...
 │ │ │ │ ├TPCEData.Empty...
 │ │ │ │ ├TEncounter.NeedVisit
 │ │ │ │ ├TPCEData.SetEncUseCurr...
 │ │ │ │ ├ExternalName
 │ │ │ │ ├TPCEData.VisitDateTime...
 │ │ │ │ ├TPCEProviderList.Assign
 │ │ │ │ ├SetDefaultProvider...
 │ │ │ │ ├TPCEProviderList.PendingIEN
 │ │ │ │ ├TPCEProviderList.IndexOfProvider
 │ │ │ │ ├AutoCheckout
 │ │ │ │ ├TPCEProviderList.AddProvider...
 │ │ │ │ ├TPCEProviderList.PendingName
 │ │ │ │ ├TfrmEncounterFrame.CreateChildForms
 │ │ │ │ │ ├TfrmEncounterFrame.LoadFormList
 │ │ │ │ │ │ └MHClinic
 │ │ │ │ │ │   └GAFOK
 │ │ │ │ │ ├TfrmEncounterFrame.AddTabs
 │ │ │ │ │ └TfrmEncounterFrame.CreateForms
 │ │ │ │ │   ├TfrmEncounterFrame.FormListContains
 │ │ │ │ │   ├TfrmPCEBase.CreateLinked
 │ │ │ │ │   │ └TfrmBase508Form.Create...
 │ │ │ │ │   ├TfrmEncounterFrame.PageIDToTab
 │ │ │ │ │   └TfrmEncounterFrame.PageIDToForm
 │ │ │ │ ├SetFormPosition
 │ │ │ │ │ └TSizeHolder.GetSize
 │ │ │ │ ├SetRPCEncLocation
 │ │ │ │ ├TfrmEncounterFrame.SynchPCEData
 │ │ │ │ │ ├TfrmEncounterFrame.FormListContains
 │ │ │ │ │ ├InitList
 │ │ │ │ │ │ ├TfrmEncounterFrame.FormListContains
 │ │ │ │ │ │ ├ListVisitTypeSections
 │ │ │ │ │ │ │ └LoadEncounterForm
 │ │ │ │ │ │ │   ├TPCEData.VisitDateTime...
 │ │ │ │ │ │ │   ├FMNow
 │ │ │ │ │ │ │   └AddProbsToDiagnoses
 │ │ │ │ │ │ │     ├TPCEData.VisitDateTime...
 │ │ │ │ │ │ │     ├rpcGetProviderPatientDaysDx
 │ │ │ │ │ │ │     └rpcGetPersonalDxList
 │ │ │ │ │ │ ├AutoSelectVisit
 │ │ │ │ │ │ ├PCERPCEncLocation
 │ │ │ │ │ │ └TfrmEncounterFrame.SectionClick
 │ │ │ │ │ │   ├TfrmEncounterFrame.FormListContains
 │ │ │ │ │ │   └TfrmVisitType.lstVTypeSectionClick
 │ │ │ │ │ │     ├ListVisitTypeCodes
 │ │ │ │ │ │     │ └InsertTab
 │ │ │ │ │ │     └TfrmVisitType.lbxVisitsClick
 │ │ │ │ │ │       └TfrmVisitType.ShowModifiers
 │ │ │ │ │ │         ├ListCPTModifiers
 │ │ │ │ │ │         │ ├ModifierList
 │ │ │ │ │ │         │ │ ├TPCEData.VisitDateTime...
 │ │ │ │ │ │         │ │ └MixedCaseModifier
 │ │ │ │ │ │         │ └ModifierIdx...
 │ │ │ │ │ │         └TfrmVisitType.CheckModifiers
 │ │ │ │ │ │           └UpdateVisitTypeModifierList
 │ │ │ │ │ │             └ModifierList...
 │ │ │ │ │ ├ListSCDisabilities
 │ │ │ │ │ ├EligbleConditions
 │ │ │ │ │ ├TfraVisitRelated.InitAllow
 │ │ │ │ │ │ └TfraVisitRelated.SetCheckEnable
 │ │ │ │ │ ├TfraVisitRelated.InitRelated
 │ │ │ │ │ │ └TfraVisitRelated.SetCheckState
 │ │ │ │ │ │   └TfraVisitRelated.chkClick
 │ │ │ │ │ │     ├DisableCheck
 │ │ │ │ │ │     └TfraVisitRelated.SetCheckEnable
 │ │ │ │ │ ├TfrmPCEBaseMain.InitTab
 │ │ │ │ │ │ ├TfrmPCEBaseMain.lbSectionClick
 │ │ │ │ │ │ │ ├TfrmPCEBaseGrid.ClearGrid
 │ │ │ │ │ │ │ │ └TfrmPCEBaseGrid.UpdateControls
 │ │ │ │ │ │ │ └TfrmPCEBaseMain.CheckOffEntries
 │ │ │ │ │ │ │   └TfrmPCEBaseMain.GetCat
 │ │ │ │ │ │ ├TfrmPCEBaseGrid.ClearGrid...
 │ │ │ │ │ │ └TfrmPCEBaseMain.GridChanged
 │ │ │ │ │ │   ├TfrmPCEBaseMain.BeginUpdate
 │ │ │ │ │ │   ├TfrmPCEBaseGrid.SaveGridSelected
 │ │ │ │ │ │   ├TPCEItem.ItemStr
 │ │ │ │ │ │   ├TfrmPCEBaseGrid.RestoreGridSelected
 │ │ │ │ │ │   ├TfrmPCEBaseGrid.SyncGridData
 │ │ │ │ │ │   │ ├TfrmPCEBaseGrid.SaveGridSelected
 │ │ │ │ │ │   │ ├TfrmPCEBaseGrid.RestoreGridSelected
 │ │ │ │ │ │   │ └TfrmPCEBaseGrid.SyncGridHeader
 │ │ │ │ │ │   ├TfrmPCEBaseMain.EndUpdate
 │ │ │ │ │ │   └TfrmPCEBaseMain.UpdateControls
 │ │ │ │ │ │     ├TfrmPCEBaseMain.NotUpdating
 │ │ │ │ │ │     ├TfrmPCEBaseMain.BeginUpdate
 │ │ │ │ │ │     ├TfrmPCEBaseGrid.GetGridIndex
 │ │ │ │ │ │     └TfrmPCEBaseMain.EndUpdate
 │ │ │ │ │ ├TPCEData.CopyDiagnoses
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListDiagnosisSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TfrmProcedures.InitTab
 │ │ │ │ │ ├TPCEData.CopyProcedures
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListProcedureSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEData.CopyImmunizations
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListImmunizSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEData.CopySkinTests
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListSkinSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEData.CopyPatientEds
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListPatientSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEData.CopyHealthFactors
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListHealthSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEData.CopyExams
 │ │ │ │ │ │ └TPCEData.CopyPCEItems...
 │ │ │ │ │ ├ListExamsSections
 │ │ │ │ │ │ └LoadEncounterForm...
 │ │ │ │ │ ├TPCEProc.Assign
 │ │ │ │ │ │ └TPCEItem.Assign...
 │ │ │ │ │ └TfrmVisitType.MatchVType
 │ │ │ │ │   ├TfrmVisitType.lstVTypeSectionClick...
 │ │ │ │ │   └TfrmVisitType.lbxVisitsClickCheck
 │ │ │ │ │     ├TPCEProviderList.PrimaryIEN...
 │ │ │ │ │     ├TPCEProc.SetFromString...
 │ │ │ │ │     └TPCEProc.Clear...
 │ │ │ │ └TfrmEncounterFrame.TabControlChange
 │ │ │ │   ├TfrmEncounterFrame.PageIDToTab
 │ │ │ │   ├TfrmEncounterFrame.PageIDToForm
 │ │ │ │   └TfrmEncounterFrame.SwitchToPage
 │ │ │ │     └TfrmPCEBase.DisplayPage
 │ │ │ └TPCEData.Save
 │ │ │   ├TPCEData.IsSecondaryVisit
 │ │ │   ├GetLocSecondaryVisitCode
 │ │ │   ├GetVisitIEN
 │ │ │   ├TPCEDiag.DelimitedStr2
 │ │ │   ├TPCEProviderList.PCEProvider...
 │ │ │   ├TPCEDiag.DelimitedStr
 │ │ │   ├TPCEProc.DelimitedStr
 │ │ │   │ └ModifierCode
 │ │ │   │   └ModifierIdx...
 │ │ │   ├TPCEItem.DelimitedStr2
 │ │ │   ├TPCEImm.DelimitedStr
 │ │ │   ├TPCESkin.DelimitedStr
 │ │ │   ├TPCEPat.DelimitedStr
 │ │ │   ├TPCEHealth.DelimitedStr
 │ │ │   ├TPCEExams.DelimitedStr
 │ │ │   ├SavePCEData
 │ │ │   ├TPCEProviderList.GetProviderData
 │ │ │   ├TPCEProviderList.Delete
 │ │ │   ├TPCEProc.Clear...
 │ │ │   ├TPCEData.StrVisitType...
 │ │ │   ├TChanges.Add
 │ │ │   │ └TChangeItem.Create
 │ │ │   ├TPCEData.StrProcedures...
 │ │ │   ├TPCEData.StrDiagnoses...
 │ │ │   ├TPCEData.StrImmunizations...
 │ │ │   ├TPCEData.StrSkinTests...
 │ │ │   ├TPCEData.StrPatientEds...
 │ │ │   ├TPCEData.StrHealthFactors...
 │ │ │   └TPCEData.StrExams...
 │ │ ├TPCEData.Create
 │ │ └TPCEData.PCEForNote...
 │ ├TPCEData.CopyPCEData...
 │ ├TfrmNotes.lstNotesClick...
 │ ├TPCEData.Clear...
 │ ├SignDocument
 │ ├TfrmNotes.UnlockConsultRequest...
 │ └TfrmNotes.LoadNotes...
 ├TfrmConsults.SaveSignItem
 │ ├GetPackageRefForNote
 │ ├TfrmFrame.GetTimedOut...
 │ ├TfrmConsults.SaveCurrentNote
 │ │ └TfrmConsults.SaveEditedConsult
 │ │   ├TfrmConsults.LacksClinProcFields
 │ │   │ └AskCosignerForTitle
 │ │   │   └TIUPatch175Installed
 │ │   │     └ServerHasPatch
 │ │   ├TfrmConsults.cmdChangeClick
 │ │   │ ├ExecuteNoteProperties
 │ │   │ │ ├TfrmBase508Form.Create...
 │ │   │ │ ├FMToday...
 │ │   │ │ ├ListClinProcTitlesShort
 │ │   │ │ │ └LoadClinProcTitles
 │ │   │ │ │   ├IdentifyClinProcClass
 │ │   │ │ │   └TClinProcTitles.Create
 │ │   │ │ ├ListConsultTitlesShort
 │ │   │ │ │ └LoadConsultTitles
 │ │   │ │ │   ├IdentifyConsultsClass
 │ │   │ │ │   └TConsultTitles.Create
 │ │   │ │ ├ListSurgeryTitlesShort
 │ │   │ │ │ └LoadSurgeryTitles
 │ │   │ │ │   └TSurgeryTitles.Create
 │ │   │ │ ├GetUnresolvedConsultsInfo
 │ │   │ │ ├ListNoteTitlesShort
 │ │   │ │ │ └LoadNoteTitles
 │ │   │ │ │   └TNoteTitles.Create
 │ │   │ │ ├TfrmNoteProperties.ShowClinProcFields
 │ │   │ │ ├TfrmNoteProperties.SetCosignerRequired
 │ │   │ │ │ ├AskCosignerForDocument
 │ │   │ │ │ │ └TIUPatch175Installed...
 │ │   │ │ │ ├AskCosignerForTitle...
 │ │   │ │ │ └DefaultCosigner
 │ │   │ │ │   └LoadTIUPrefs
 │ │   │ │ │     └ExternalName
 │ │   │ │ ├TfrmNoteProperties.SetGenericFormSize
 │ │   │ │ ├TfrmNoteProperties.ShowRequestList
 │ │   │ │ │ └ListConsultRequests
 │ │   │ │ ├TfrmNoteProperties.ShowSurgCaseList
 │ │   │ │ │ └ListSurgeryCases
 │ │   │ │ ├TfrmNoteProperties.ShowPRFList
 │ │   │ │ │ ├TPRFActions.Create
 │ │   │ │ │ ├TPRFActions.Load
 │ │   │ │ │ └TPRFActions.ShowActionsOnList
 │ │   │ │ │   └TPRFActions.SelActionHasNote
 │ │   │ │ ├IsConsultTitle
 │ │   │ │ ├IsSurgeryTitle
 │ │   │ │ │ └ShowSurgeryTab
 │ │   │ │ ├IsPRFTitle
 │ │   │ │ ├TfrmNoteProperties.cboNewTitleExit
 │ │   │ │ │ └TfrmNoteProperties.cboNewTitleMouseClick
 │ │   │ │ │   ├IsConsultTitle
 │ │   │ │ │   ├TfrmNoteProperties.SetGenericFormSize
 │ │   │ │ │   ├TfrmNoteProperties.ShowRequestList...
 │ │   │ │ │   ├TfrmNoteProperties.ShowSurgCaseList...
 │ │   │ │ │   ├IsSurgeryTitle...
 │ │   │ │ │   ├TfrmNoteProperties.ShowPRFList...
 │ │   │ │ │   ├IsPRFTitle
 │ │   │ │ │   └TfrmNoteProperties.SetCosignerRequired...
 │ │   │ │ ├TfrmNoteProperties.FormatRequestList
 │ │   │ │ │ └TfrmNoteProperties.ShowRequestList...
 │ │   │ │ ├PrintNameForTitle
 │ │   │ │ ├TEncounter.GetLocationName...
 │ │   │ │ ├TPRFActions.GetPRF_IEN
 │ │   │ │ └TPRFActions.GetActionIEN
 │ │   │ ├TChanges.ReplaceSignState
 │ │   │ ├MakeConsultNoteDisplayText
 │ │   │ ├TChanges.ReplaceText
 │ │   │ ├TfrmConsults.GetTitleText
 │ │   │ │ └MakeConsultNoteDisplayText
 │ │   │ ├TfrmConsults.LockConsultRequest
 │ │   │ │ ├GetConsultOrderIEN
 │ │   │ │ ├TfrmNotes.ActiveEditOf
 │ │   │ │ └OrderCanBeLocked...
 │ │   │ ├UnlockOrderIfAble...
 │ │   │ ├GetConsultOrderIEN
 │ │   │ └TfrmConsults.mnuActLoadBoilerClick
 │ │   │   ├LoadBoilerPlate
 │ │   │   ├GetLinkedTemplate
 │ │   │   │ ├GetLinkedTemplateData
 │ │   │   │ └AddTemplate
 │ │   │   │   ├TTemplate.Create
 │ │   │   │   │ └TTemplate.ReminderDialogIEN
 │ │   │   │   └TTemplate.AddChild
 │ │   │   │     └TTemplate.GetItems
 │ │   │   │       └ExpandTemplate
 │ │   │   │         ├TTemplate.GetChildren
 │ │   │   │         ├GetTemplateChildren
 │ │   │   │         ├AddTemplate...
 │ │   │   │         └TTemplate.ItemIENs
 │ │   │   │           └TTemplate.GetItems...
 │ │   │   ├MakeXMLParamTIU
 │ │   │   │ └ExternalName
 │ │   │   ├AssignBoilerText
 │ │   │   │ └QuickCopyWith508Msg
 │ │   │   │   └SpeakTextInserted
 │ │   │   ├QueryBoilerPlate
 │ │   │   │ └TfrmBase508Form.Create...
 │ │   │   └QuickCopyWith508Msg...
 │ │   ├TfrmFrame.GetTimedOut...
 │ │   ├SaveOrAbort
 │ │   │ ├TfrmConsults.SetEditingIndex
 │ │   │ │ ├KillReminderDialog...
 │ │   │ │ └TfrmReminderTree.EnableActions...
 │ │   │ └TfrmConsults.lstNotesClick
 │ │   │   ├UpdateReminderFinish...
 │ │   │   ├MakeConsultNoteDisplayText
 │ │   │   ├GetDetailedMedicineResults
 │ │   │   ├NotifyOtherApps...
 │ │   │   ├LoadDocumentText
 │ │   │   ├TfrmReminderTree.EnableActions...
 │ │   │   ├TfrmConsults.DisplayPCE...
 │ │   │   └TfrmConsults.SetResultMenus
 │ │   │     ├CanReceiveAttachment
 │ │   │     ├TNotifications.GetFollowUp
 │ │   │     └TfrmConsults.UserIsSigner
 │ │   │       └GetCurrentSigners
 │ │   ├TfrmConsults.tvCsltNotesChange
 │ │   │ ├CanBeAttached
 │ │   │ ├CanReceiveAttachment
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmConsults.ShowPCEControls
 │ │   │ ├TfrmDrawers.DisplayDrawers...
 │ │   │ └TfrmConsults.lstNotesClick...
 │ │   ├TfrmConsults.GetTitleText...
 │ │   ├TfrmConsults.mnuActNoteDeleteClick
 │ │   │ ├ActOnDocument
 │ │   │ ├SelectDeleteReason...
 │ │   │ ├MakeNoteDisplayText
 │ │   │ ├TfrmConsults.LockConsultRequestAndNote
 │ │   │ │ ├TfrmNotes.ActiveEditOf
 │ │   │ │ ├TChanges.Exist
 │ │   │ │ ├IsConsultTitle
 │ │   │ │ ├TitleForNote
 │ │   │ │ ├GetPackageRefForNote
 │ │   │ │ ├TfrmConsults.LockConsultRequest...
 │ │   │ │ ├LockDocument
 │ │   │ │ └UnlockOrderIfAble...
 │ │   │ ├JustifyDocumentDelete
 │ │   │ ├TfrmConsults.SaveCurrentNote...
 │ │   │ ├TfrmConsults.SetEditingIndex...
 │ │   │ ├GetPackageRefForNote
 │ │   │ ├VisitStrForNote
 │ │   │ ├TfrmConsults.RemovePCEFromChanges
 │ │   │ │ ├VisitStrForNote
 │ │   │ │ └TChanges.Remove...
 │ │   │ ├DeleteDocument
 │ │   │ ├TChanges.Exist
 │ │   │ ├UnlockDocument
 │ │   │ ├TChanges.Remove...
 │ │   │ ├TfrmConsults.UnlockConsultRequest
 │ │   │ │ ├GetConsultIENforNote
 │ │   │ │ ├GetConsultOrderIEN
 │ │   │ │ └UnlockOrderIfAble...
 │ │   │ ├DeletePCE
 │ │   │ ├TfrmConsults.ClearEditControls
 │ │   │ │ ├TPCEData.Clear...
 │ │   │ │ ├TfrmConsults.SetEditingIndex...
 │ │   │ │ └TfrmConsults.ShowPCEControls
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmConsults.ShowPCEControls
 │ │   │ ├TfrmDrawers.DisplayDrawers...
 │ │   │ ├TfrmConsults.UpdateList
 │ │   │ │ ├StrToFMDateTime
 │ │   │ │ └TfrmConsults.LoadConsults
 │ │   │ │   ├KillDocTreeObjects...
 │ │   │ │   ├GetConsultsList
 │ │   │ │   │ └MakeConsultListItem
 │ │   │ │   ├StrToFMDateTime
 │ │   │ │   ├CreateListItemsForConsultTree
 │ │   │ │   ├TfrmConsults.UpdateConsultsTreeView
 │ │   │ │   │ └BuildConsultsTree
 │ │   │ │   │   ├MakeConsultListDisplayText
 │ │   │ │   │   ├SetNodeImage
 │ │   │ │   │   └..(rec)..
 │ │   │ │   └TfrmConsults.tvConsultsChange
 │ │   │ │     ├UpdateReminderFinish...
 │ │   │ │     ├TfrmConsults.ShowPCEControls
 │ │   │ │     ├TfrmDrawers.DisplayDrawers...
 │ │   │ │     ├KillDocTreeObjects...
 │ │   │ │     └TfrmConsults.lstConsultsClick
 │ │   │ │       ├TfrmConsults.ClearEditControls...
 │ │   │ │       ├GetConsultRec
 │ │   │ │       ├LoadConsultDetail
 │ │   │ │       ├KillDocTreeObjects...
 │ │   │ │       ├CreateListItemsForDocumentTree
 │ │   │ │       ├TfrmConsults.UpdateNoteTreeView
 │ │   │ │       │ └BuildDocumentTree...
 │ │   │ │       ├TfrmConsults.DisplayPCE...
 │ │   │ │       ├TfrmConsults.ShowPCEControls
 │ │   │ │       ├TfrmConsults.SetActionMenus
 │ │   │ │       │ ├GetActionMenuLevel
 │ │   │ │       │ │ └ConsultCanBeResubmitted
 │ │   │ │       │ └TNotifications.GetFollowUp
 │ │   │ │       └TfrmConsults.SetResultMenus...
 │ │   │ └TfrmConsults.tvConsultsClick
 │ │   │   ├KillDocTreeObjects...
 │ │   │   └TfrmConsults.tvConsultsChange...
 │ │   ├TPCEData.GetCPTRequired...
 │ │   ├PutEditedNote...
 │ │   ├TfrmConsults.SetEditingIndex...
 │ │   └TfrmConsults.lstNotesClick...
 │ ├CosignDocument
 │ ├ActOnDocument
 │ ├TfrmConsults.LacksClinProcFieldsForSignature
 │ │ ├GetConsultIENforNote
 │ │ ├GetActionMenuLevel...
 │ │ ├IsClinProcTitle
 │ │ ├TitleForNote
 │ │ ├GetSavedCPFields
 │ │ │ └StrToFMDateTime
 │ │ └TfrmConsults.LacksClinProcFields...
 │ ├NoteHasText
 │ ├LastSaveClean
 │ ├IsOK2Sign...
 │ ├TPCEData.CopyPCEData...
 │ ├TfrmConsults.lstNotesClick...
 │ ├TPCEData.Clear...
 │ ├SignDocument
 │ ├TfrmConsults.UnlockConsultRequest...
 │ ├UnlockDocument
 │ ├FindConsult
 │ │ └MakeConsultListItem
 │ ├MakeConsultListDisplayText
 │ ├SetNodeImage
 │ ├TfrmConsults.tvConsultsClick...
 │ └TfrmConsults.UpdateList...
 ├TfrmDCSumm.SaveSignItem
 │ ├TfrmFrame.GetTimedOut...
 │ ├TfrmDCSumm.SaveCurrentSumm
 │ │ └TfrmDCSumm.SaveEditedSumm
 │ │   ├TfrmDCSumm.tvSummsChange
 │ │   │ ├CanBeAttached
 │ │   │ ├CanReceiveAttachment
 │ │   │ ├TraverseTree...
 │ │   │ ├TfrmDCSumm.lvSummsSelectItem
 │ │   │ │ └TfrmDCSumm.lstSummsClick
 │ │   │ │   ├MakeDCSummDisplayText
 │ │   │ │   ├LoadDocumentText
 │ │   │ │   ├TfrmDCSumm.DisplayPCE
 │ │   │ │   │ ├TPCEData.AddStrData...
 │ │   │ │   │ ├GetVitalsFromDate...
 │ │   │ │   │ ├TPCEData.AddVitalData...
 │ │   │ │   │ ├CanEditPCE...
 │ │   │ │   │ ├TfrmDCSumm.ShowPCEControls
 │ │   │ │   │ ├TfrmDrawers.DisplayDrawers...
 │ │   │ │   │ ├ActOnDocument
 │ │   │ │   │ ├TPCEData.PCEForNote...
 │ │   │ │   │ └GetVitalsFromNote...
 │ │   │ │   └NotifyOtherApps...
 │ │   │ ├TfrmDCSumm.ShowPCEControls
 │ │   │ └TfrmDCSumm.lstSummsClick...
 │ │   ├TfrmDCSumm.GetTitleText
 │ │   ├TfrmDCSumm.mnuActDeleteClick
 │ │   │ ├TfrmDCSumm.NoSummSelected
 │ │   │ ├ActOnDocument
 │ │   │ ├SelectDeleteReason...
 │ │   │ ├MakeDCSummDisplayText
 │ │   │ ├TfrmDCSumm.LockSumm
 │ │   │ │ ├TChanges.Exist
 │ │   │ │ └LockDocument
 │ │   │ ├JustifyDocumentDelete
 │ │   │ ├TfrmDCSumm.SaveCurrentSumm...
 │ │   │ ├TfrmDCSumm.SetEditingIndex
 │ │   │ ├VisitStrForNote
 │ │   │ ├TfrmDCSumm.RemovePCEFromChanges
 │ │   │ │ ├VisitStrForNote
 │ │   │ │ └TChanges.Remove...
 │ │   │ ├DeleteDocument
 │ │   │ ├TChanges.Exist
 │ │   │ ├UnlockDocument
 │ │   │ ├TChanges.Remove...
 │ │   │ ├DeletePCE
 │ │   │ ├TfrmDCSumm.ClearEditControls
 │ │   │ │ ├TPCEData.Clear...
 │ │   │ │ └TfrmDCSumm.SetEditingIndex
 │ │   │ ├TfrmDCSumm.LoadSumms
 │ │   │ │ ├KillDocTreeObjects...
 │ │   │ │ ├ListSummsForTree
 │ │   │ │ ├CreateListItemsForDocumentTree
 │ │   │ │ ├TfrmDCSumm.UpdateTreeView
 │ │   │ │ │ └BuildDocumentTree...
 │ │   │ │ ├RemoveParentsWithNoChildren...
 │ │   │ │ └TfrmDCSumm.tvSummsChange...
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmDCSumm.ShowPCEControls
 │ │   │ └TfrmDrawers.DisplayDrawers...
 │ │   ├TfrmDCSumm.cmdChangeClick
 │ │   │ ├ExecuteDCSummProperties
 │ │   │ │ ├TfrmBase508Form.Create...
 │ │   │ │ ├ListDCSummTitlesShort
 │ │   │ │ │ └LoadDCSummTitles
 │ │   │ │ │   └TDCSummTitles.Create
 │ │   │ │ ├LoadDCUrgencies
 │ │   │ │ ├TfrmDCSummProperties.ShowAdmissionList
 │ │   │ │ │ └ListAdmitAll
 │ │   │ │ ├PrintNameForTitle
 │ │   │ │ ├StrToFMDateTime
 │ │   │ │ ├GetDischargeDate
 │ │   │ │ ├FMNow
 │ │   │ │ └GetTIUListItem
 │ │   │ ├TChanges.ReplaceSignState
 │ │   │ ├MakeDCSummDisplayText
 │ │   │ ├TChanges.ReplaceText
 │ │   │ ├TfrmDCSumm.GetTitleText
 │ │   │ └TfrmDCSumm.mnuActLoadBoilerClick
 │ │   │   ├TfrmDCSumm.NoSummSelected
 │ │   │   ├LoadBoilerPlate
 │ │   │   ├GetLinkedTemplate...
 │ │   │   ├MakeXMLParamTIU
 │ │   │   │ └ExternalName
 │ │   │   ├AssignBoilerText
 │ │   │   │ └QuickCopyWith508Msg...
 │ │   │   ├QueryBoilerPlate...
 │ │   │   └QuickAddWith508Msg
 │ │   │     └SpeakTextInserted
 │ │   ├TPCEData.GetCPTRequired...
 │ │   ├RequireMASVerification
 │ │   ├RequireRelease
 │ │   ├PutEditedDCSumm
 │ │   │ └SetText...
 │ │   ├TChanges.Remove...
 │ │   ├UnlockDocument
 │ │   ├TfrmDCSumm.SetEditingIndex
 │ │   └TfrmDCSumm.lstSummsClick...
 │ ├CosignDocument
 │ ├ActOnDocument
 │ ├NoteHasText
 │ ├LastSaveClean
 │ ├IsOK2Sign...
 │ ├TPCEData.CopyPCEData...
 │ ├TfrmDCSumm.lstSummsClick...
 │ ├TPCEData.Clear...
 │ ├SignDocument
 │ └TfrmDCSumm.LoadSumms...
 ├TfrmSurgery.SaveSignItem
 │ ├TfrmFrame.GetTimedOut...
 │ ├TfrmSurgery.SaveCurrentNote
 │ │ └TfrmSurgery.SaveEditedNote
 │ │   ├TfrmSurgery.tvSurgeryChange
 │ │   │ ├TfrmSurgery.EnableDisableMenus
 │ │   │ ├MakeSurgeryCaseDisplayText
 │ │   │ ├NotifyOtherApps...
 │ │   │ ├TfrmSurgery.lstNotesClick
 │ │   │ │ ├MakeSurgeryReportDisplayText
 │ │   │ │ ├LoadSurgReportText
 │ │   │ │ ├TfrmReminderTree.EnableActions...
 │ │   │ │ ├TfrmSurgery.DisplayPCE
 │ │   │ │ │ ├TfrmSurgery.ShowPCEControls
 │ │   │ │ │ ├TfrmDrawers.DisplayDrawers...
 │ │   │ │ │ ├TPCEData.AddStrData...
 │ │   │ │ │ ├GetVitalsFromDate...
 │ │   │ │ │ ├TPCEData.AddVitalData...
 │ │   │ │ │ ├TfrmSurgery.ShowPCEButtons
 │ │   │ │ │ │ ├AnytimeEncounters
 │ │   │ │ │ │ ├CanEditPCE...
 │ │   │ │ │ │ └GetAskPCE
 │ │   │ │ │ ├InteractiveRemindersActive...
 │ │   │ │ │ ├GetReminderStatus
 │ │   │ │ │ ├TfrmDrawers.DisplayDrawers...
 │ │   │ │ │ ├ActOnDocument
 │ │   │ │ │ ├TPCEData.PCEForNote...
 │ │   │ │ │ └GetVitalsFromNote...
 │ │   │ │ └NotifyOtherApps...
 │ │   │ ├TfrmSurgery.ShowPCEControls
 │ │   │ ├TfrmSurgery.ShowPCEButtons...
 │ │   │ ├TfrmReminderTree.EnableActions...
 │ │   │ └TfrmSurgery.DisplayPCE...
 │ │   ├TfrmSurgery.GetTitleText
 │ │   ├TfrmSurgery.mnuActDeleteClick
 │ │   │ ├ActOnDocument
 │ │   │ ├SelectDeleteReason...
 │ │   │ ├MakeNoteDisplayText
 │ │   │ ├LockDocument
 │ │   │ ├JustifyDocumentDelete
 │ │   │ ├TfrmSurgery.SaveCurrentNote...
 │ │   │ ├TfrmSurgery.SetEditingIndex
 │ │   │ │ ├KillReminderDialog...
 │ │   │ │ └TfrmReminderTree.EnableActions...
 │ │   │ ├VisitStrForNote
 │ │   │ ├TfrmSurgery.RemovePCEFromChanges
 │ │   │ │ ├VisitStrForNote
 │ │   │ │ └TChanges.Remove...
 │ │   │ ├DeleteDocument
 │ │   │ ├TChanges.Exist
 │ │   │ ├UnlockDocument
 │ │   │ ├TChanges.Remove...
 │ │   │ ├DeletePCE
 │ │   │ ├TfrmSurgery.ClearEditControls
 │ │   │ │ ├TPCEData.Clear...
 │ │   │ │ └TfrmSurgery.SetEditingIndex...
 │ │   │ ├TfrmSurgery.LoadSurgeryCases
 │ │   │ │ ├KillCaseTreeObjects
 │ │   │ │ │ └ResetCaseTreeObjectStrings
 │ │   │ │ ├TfrmSurgery.ShowPCEControls
 │ │   │ │ ├GetSurgCaseList
 │ │   │ │ ├CreateListItemsForCaseTree
 │ │   │ │ ├TfrmSurgery.UpdateTreeView
 │ │   │ │ │ └BuildCaseTree
 │ │   │ │ │   ├MakeSurgeryCaseDisplayText
 │ │   │ │ │   ├MakeSurgeryReportDisplayText
 │ │   │ │ │   ├MakeCaseTreeObject
 │ │   │ │ │   │ ├MakeSurgeryCaseDisplayText
 │ │   │ │ │   │ └MakeSurgeryReportDisplayText
 │ │   │ │ │   ├SetCaseTreeNodeImagesAndFormatting
 │ │   │ │ │   │ └SetImageFlag
 │ │   │ │ │   └..(rec)..
 │ │   │ │ ├RemoveParentsWithNoChildren
 │ │   │ │ │ └KillCaseTreeNode
 │ │   │ │ │   └ResetCaseTreeObjectStrings
 │ │   │ │ ├TfrmSurgery.SetSurgTreeLabel
 │ │   │ │ │ └SetDateRangeText
 │ │   │ │ └TfrmSurgery.tvSurgeryChange...
 │ │   │ ├UpdateReminderFinish...
 │ │   │ ├TfrmSurgery.ShowPCEControls
 │ │   │ └TfrmSurgery.ShowPCEButtons...
 │ │   ├TPCEData.GetCPTRequired...
 │ │   ├PutEditedNote...
 │ │   ├TfrmSurgery.SetEditingIndex...
 │ │   └TfrmSurgery.lstNotesClick...
 │ ├CosignDocument
 │ ├ActOnDocument
 │ ├NoteHasText
 │ ├LastSaveClean
 │ ├IsOK2Sign...
 │ ├TPCEData.CopyPCEData...
 │ ├TfrmSurgery.lstNotesClick...
 │ ├TPCEData.Clear...
 │ ├SignDocument
 │ └TfrmSurgery.LoadSurgeryCases...
 ├TChanges.Remove...
 └UnlockIfAble
   └UnlockPatient

Called-By Hierarchy


                                         TfrmReview.cmdOKClick
                                               ReviewChanges┘ 
                           TfrmFrame.AllowContextChangeAll┤   
                                TfrmFrame.FormCloseQuery┤ │   
                              TfrmFrame.mnuFileNextClick┤ │   
                            TfrmFrame.mnuFileOpenClick┤ │ │   
                                TfrmFrame.UMInitiate┤ │ │ │   
                       TfrmFrame.mnuFileNextClick...┤ │ │ │   
                       TfrmFrame.mnuFileRefreshClick┤ │ │ │   
                       TfrmOrders.CheckOrderStatus┤ │ │ │ │   
                   TfrmOrders.mnuActChgEvntClick┤ │ │ │ │ │   
                      TfrmOrders.mnuActHoldClick┤ │ │ │ │ │   
                    TfrmOrders.mnuActUnholdClick┤ │ │ │ │ │   
                     TfrmOrders.mnuActRenewClick┤ │ │ │ │ │   
                    TfrmOrders.mnuActChangeClick┤ │ │ │ │ │   
                      TfrmOrders.mnuActCopyClick┘ │ │ │ │ │   
                            TfrmMeds.mnuActDCClick┤ │ │ │ │   
                           TfrmMeds.CheckMedStatus┘ │ │ │ │   
                        TfrmMeds.mnuActHoldClick┤   │ │ │ │   
                       TfrmMeds.mnuActRenewClick┤   │ │ │ │   
                      TfrmMeds.mnuActUnholdClick┤   │ │ │ │   
                      TfrmMeds.mnuActChangeClick┤   │ │ │ │   
                        TfrmMeds.mnuActCopyClick┤   │ │ │ │   
                      TfrmMeds.mnuActRefillClick┘   │ │ │ │   
                                  TfrmFrame.ViewInfo┘ │ │ │   
                               TfrmDCSumm.ViewInfo┤   │ │ │   
                             TfrmConsults.ViewInfo┤   │ │ │   
                     TfrmFrame.pnlRemindersMouseUp┤   │ │ │   
                      TfrmFrame.RemindersChanged┘ │   │ │ │   
                          TfrmFrame.FormCreate┘   │   │ │ │   
                            TfrmFrame.pnlCIRNClick┤   │ │ │   
                      TfrmFrame.pnlVistaWebClick┤ │   │ │ │   
                           TfrmFrame.FormKeyDown┘ │   │ │ │   
                         TfrmFrame.pnlPatientClick┤   │ │ │   
                           TfrmFrame.pnlVisitClick┤   │ │ │   
                     TfrmFrame.pnlPrimaryCareClick┤   │ │ │   
                       TfrmFrame.pnlRemindersClick┤   │ │ │   
                        TfrmFrame.pnlPostingsClick┤   │ │ │   
                            TfrmFrame.pnlFlagClick┤   │ │ │   
                              TfrmFrame.laMHVClick┤   │ │ │   
                             TfrmFrame.laVAA2Click┤   │ │ │   
                               TfrmOrders.ViewInfo┤   │ │ │   
                                 TfrmMeds.ViewInfo┤   │ │ │   
                              TfrmSurgery.ViewInfo┤   │ │ │   
                                TfrmNotes.ViewInfo┤   │ │ │   
                             TfrmProblems.ViewInfo┘   │ │ │   
                     TfrmFrame.mnuFileNotifRemoveClick┤ │ │   
                             TfrmFrame.NextButtonClick┘ │ │   
                           TfrmFrame.SetUpNextButton┘   │ │   
                     TfrmFrame.mnuFileOpenClick...┤     │ │   
                              TfrmFrame.FormResize┘     │ │   
                            TfrmFrame.ChangeFont┘       │ │   
                    TfrmFrame.LoadSizesForUser┤         │ │   
               TfrmFrame.LoadUserPreferences┘ │         │ │   
                      TfrmFrame.UMInitiate┘   │         │ │   
                    TfrmFrame.mnuFontSizeClick┘         │ │   
                           TfrmFrame.mnuFileOpenClick...┤ │   
                           TfrmFrame.ctxContextorPending┤ │   
                          TfrmFrame.StartCCOWContextor┘ │ │   
                                TfrmFrame.FormCreate┘   │ │   
                         TfrmFrame.ctxContextorCommitted┤ │   
                       TfrmFrame.StartCCOWContextor...┘ │ │   
                  TfrmFrame.mnuFileResumeContextGetClick┤ │   
                  TfrmFrame.mnuFileResumeContextSetClick┘ │   
                                  TfrmFrame.FormCloseQuery┤   
                              TfrmFrame.mnuFileReviewClick┤   
                                           UpdateEncounter┘   
                         TfrmFrame.mnuFileEncounterClick┤     
                                 TfrmFrame.ViewInfo...┤ │     
                    TfrmODMedIV.SetValuesFromResponses┤ │     
                             TfrmODMedIV.SetupDialog┤ │ │     
                   TfrmODMedIV.cboSolutionMouseClick┘ │ │     
                       TfrmODMedIV.cboSolutionExit┘   │ │     
                  TfrmODMedIV.cboSolutionMouseClick...┤ │     
                     TfrmODMedIV.cboAdditiveMouseClick┤ │     
                         TfrmODMedIV.cboAdditiveExit┘ │ │     
                                TfrmODAuto.SetupDialog┤ │     
                                   ActivateOrderDialog┤ │     
                           TfrmRemDlg.btnFinishClick┤ │ │     
           TfrmConsults.mnuActNewConsultRequestClick┤ │ │     
                   TfrmConsults.cmdNewConsultClick┘ │ │ │     
                TfrmConsults.mnuActNewProcedureClick┤ │ │     
                      TfrmConsults.cmdNewProcClick┘ │ │ │     
                                        ChangeOrders┤ │ │     
                      TfrmOrders.mnuActChangeClick┤ │ │ │     
                        TfrmMeds.mnuActChangeClick┘ │ │ │     
                                     ChangeOrdersEvt┤ │ │     
                                          CopyOrders┤ │ │     
                        TfrmOrders.mnuActCopyClick┤ │ │ │     
                          TfrmMeds.mnuActCopyClick┤ │ │ │     
                           TfrmODActive.btnOKClick┘ │ │ │     
                                      TransferOrders┤ │ │     
                        TfrmOrders.mnuActCopyClick┤ │ │ │     
                          TfrmMeds.mnuActCopyClick┤ │ │ │     
                           TfrmODActive.btnOKClick┘ │ │ │     
                            TfrmOrders.lstWriteClick┤ │ │     
               TfrmOrders.PlaceOrderForDefaultDialog┤ │ │     
                  TfrmOrders.DisplayDefaultDlgList┤ │ │ │     
                       TfrmOrders.ResetOrderPage┘ │ │ │ │     
               TfrmOrders.btnDelayedOrderClick┘   │ │ │ │     
                                 DisplayEvntDialog┤ │ │ │     
                             SetDelayEventForMed┘ │ │ │ │     
                      TfrmMeds.mnuActCopyClick┘   │ │ │ │     
                                 DisplayEvntDialog┤ │ │ │     
                                  SetViewForCopy┘ │ │ │ │     
                    TfrmOrders.mnuActCopyClick┘   │ │ │ │     
                                 DisplayEvntDialog┘ │ │ │     
                                ExecuteChangeEvt┘   │ │ │     
                 TfrmOrders.mnuActChgEvntClick┘     │ │ │     
                             TfrmMeds.mnuActNewClick┤ │ │     
                           TfrmOMNavA.ActivateDialog┤ │ │     
                         TfrmOMNavA.grdMenuKeyDown┤ │ │ │     
                         TfrmOMNavA.grdMenuMouseUp┘ │ │ │     
                                TfrmOMSet.DoNextItem┘ │ │     
                              TfrmOMSet.InsertList┤   │ │     
                               ActivateOrderList┘ │   │ │     
                     TfrmRemDlg.btnFinishClick┤   │   │ │     
                             ActivateOrderHTML┤   │   │ │     
                    TfrmOrders.lstWriteClick┤ │   │   │ │     
    TfrmOrders.PlaceOrderForDefaultDialog...┘ │   │   │ │     
                              ActivateOrderSet┤   │   │ │     
                   TfrmRemDlg.btnFinishClick┤ │   │   │ │     
TfrmConsults.mnuActNewConsultRequestClick...┤ │   │   │ │     
     TfrmConsults.mnuActNewProcedureClick...┤ │   │   │ │     
                    TfrmOrders.lstWriteClick┤ │   │   │ │     
    TfrmOrders.PlaceOrderForDefaultDialog...┤ │   │   │ │     
                     TfrmMeds.mnuActNewClick┤ │   │   │ │     
                TfrmOMNavA.ActivateDialog...┤ │   │   │ │     
                     TfrmOMSet.DoNextItem...┘ │   │   │ │     
                       TfrmOMNavA.DoSelectList┘   │   │ │     
                     TfrmOMNavA.grdMenuKeyUp┤     │   │ │     
                   TfrmOMNavA.grdMenuMouseUp┘     │   │ │     
                                        SkipToNext┤   │ │     
                         TfrmOMSet.DoNextItem...┘ │   │ │     
                            TfrmOMSet.UMDelayEvent┘   │ │     
                               TfrmOMSet.InsertList...┤ │     
                                TfrmODMeds.SetupDialog┤ │     
                             TfrmODMeds.btnSelectClick┤ │     
                             TfrmODMeds.UMDelayClick┘ │ │     
                                    ExecuteRenewOrders┘ │     
                         TfrmOrders.mnuActRenewClick┤   │     
                           TfrmMeds.mnuActRenewClick┘   │     
                                        EncounterPresent┤     
                                      ReadyForNewOrder┤ │     
                           TfrmRemDlg.btnFinishClick┤ │ │     
        TfrmConsults.mnuActNewConsultRequestClick...┤ │ │     
             TfrmConsults.mnuActNewProcedureClick...┤ │ │     
                                     ChangeOrders...┤ │ │     
                                     ChangeOrdersEvt┤ │ │     
                                       CopyOrders...┤ │ │     
                                   TransferOrders...┤ │ │     
                            TfrmOrders.lstWriteClick┤ │ │     
                             TfrmMeds.mnuActNewClick┘ │ │     
                                     ReadyForNewOrder1┤ │     
            TfrmOrders.PlaceOrderForDefaultDialog...┘ │ │     
                              TfrmOrders.mnuActDCClick┤ │     
                             TfrmOrders.mnuActRelClick┤ │     
                            TfrmOrders.mnuActHoldClick┤ │     
                          TfrmOrders.mnuActUnholdClick┤ │     
                           TfrmOrders.mnuActRenewClick┤ │     
                         TfrmOrders.mnuActReleaseClick┤ │     
                         TfrmOrders.mnuActOnChartClick┤ │     
                            TfrmOrders.mnuActSignClick┤ │     
                                TfrmMeds.mnuActDCClick┤ │     
                              TfrmMeds.mnuActHoldClick┤ │     
                             TfrmMeds.mnuActRenewClick┤ │     
                            TfrmMeds.mnuActUnholdClick┤ │     
                              TfrmMeds.mnuActCopyClick┤ │     
                            TfrmMeds.mnuActRefillClick┘ │     
                                     EncounterPresentEDO┤     
                                   ReadyForNewOrder...┤ │     
                         TfrmOrders.mnuActChgEvntClick┤ │     
                          TfrmOrders.mnuActChangeClick┤ │     
                            TfrmOrders.mnuActCopyClick┤ │     
                       TfrmOrders.btnDelayedOrderClick┤ │     
                            TfrmMeds.mnuActChangeClick┤ │     
                              TfrmMeds.mnuActCopyClick┘ │     
                                             UpdateVisit┤     
                                           EditPCEData┤ │     
                             TfrmSurgery.cmdPCEClick┤ │ │     
                                 UpdateEncounterInfo┘ │ │     
                             TfrmNotes.cmdPCEClick┘   │ │     
                        TfrmVitals.btnEnterVitalsClick┘ │     
                                             UpdateVisit┤     
                                        EncounterPresent┘     
                         TfrmProblems.lstProbActsClick┘       
                     TfrmProblems.wgProbDataDblClick┤         
                           TfrmProblems.lstViewClick┘         
                   TfrmProblems.HighlightDuplicate┘           
                         TfrmProblems.AddProblem┤             
              TfrmProblems.lstProbActsClick...┤ │             
                 TfrmProblems.lstProbPickClick┤ │             
              TfrmProblems.lstProbPickDblClick┤ │             
              TfrmProblems.edProbEntKeyPress┘ │ │             
                      TfrmProblems.UMPLLexicon┘ │             
                   TfrmdlgProb.bbChangeProbClick┘             

Calls

Name Declaration Comments
TfrmReview.AnyItemsAreChecked function AnyItemsAreChecked: Boolean; -
BADxEntered function BADxEntered:boolean; -
BuildSaveUnsignedList procedure BuildSaveUnsignedList(pOrderList: TStringList); -
CheckForChangeFromLCtoWCOnRelease procedure CheckForChangeFromLCtoWCOnRelease(Dest: TStrings; ALocation: integer; OrderList: TStringList); -
checkPINValue function checkPINValue(InputForm: TComponent): TPINResult; -
tCryptography.Create constructor Create; -
CurrentLocationForPatient procedure CurrentLocationForPatient(const DFN: string; var ALocation: Integer; var AName: string; var ASvc: string); -
ExecuteSessionOrderChecks function ExecuteSessionOrderChecks(OrderList: TStringList) : Boolean; -
TfrmReview.GetCheckBoxStatus function GetCheckBoxStatus(sourceOrderID : string) : string; overload; -
TNotifications.GetFollowUp function GetFollowUp: Integer; -
TEncounter.GetLocationName function GetLocationName: string; -
TEncounter.GetLocationText function GetLocationText: string; -
GetOrderStatus function GetOrderStatus(AnOrderId: string): integer; -
TfrmFrame.GetTimedOut function GetTimedOut: boolean; -
TEncounter.GetVisitCategory function GetVisitCategory: Char; -
IsInvalidActionWarning function IsInvalidActionWarning(const AnOrderText,AnOrderID: String): boolean; -
IsUserNurseProvider function IsUserNurseProvider(pUserID: int64): boolean; -
TChanges.Locate function Locate(ItemType: Integer; const AnID: string): TChangeItem; -
LockedForOrdering function LockedForOrdering: Boolean; -
Log2File procedure Log2File( crypto: tCryptography) ; -
NotifyOtherApps procedure NotifyOtherApps(const AppEvent, AppData: string); -
TSigItems.OK2SaveSettings function OK2SaveSettings: boolean; -
OrderRequiresSignature function OrderRequiresSignature(const ID: string): Boolean; -
OrdersSignedOrReleased function OrdersSignedOrReleased: Boolean; -
OrdersToBeSignedOrReleased function OrdersToBeSignedOrReleased: Boolean; -
PersonHasKey function PersonHasKey(APerson: Int64; const AKey: string): Boolean; -
Piece2end function Piece2end (s,del: string): string; -
TfrmPrintLocation.PrintLocation procedure PrintLocation(OrderLst: TStringList; pEncounterLoc: integer; pEncounterLocName, pEncounterLocText: string; pEncounterDT: TFMDateTime; pEncounterVC: Char; var ClinicLst, WardLst: TStringList; var wardIEN: integer; var wardLocation: string; ContainsIMOOrders: boolean; displayEncSwitch: boolean = false); -
PrintOrdersOnSignRelease procedure PrintOrdersOnSignRelease(OrderList: TStringList; Nature: Char; PrintLoc : Integer =0; PrintName: string = ''); -
PrintOrdersOnSignReleaseMult procedure PrintOrdersOnSignReleaseMult(OrderList, ClinicLst, WardLst: TStringList; Nature: Char; EncLoc, WardLoc: integer; EncLocName, WardLocName: string); -
TChanges.Remove procedure Remove(ItemType: Integer; const AnID: string); -
ReportBox procedure ReportBox(ReportText: TStrings; ReportTitle: string; AllowPrint: boolean); -
tCryptography.Reset procedure Reset; -
TfrmPrintLocation.rpcIsPatientOnWard function rpcIsPatientOnWard(Patient: string): string; -
TSigItems.SaveSettings procedure SaveSettings; -
TfrmNotes.SaveSignItem procedure SaveSignItem(const ItemID, ESCode: string); -
TfrmConsults.SaveSignItem procedure SaveSignItem(const ItemID, ESCode: string); -
TfrmDCSumm.SaveSignItem procedure SaveSignItem(const ItemID, ESCode: string); -
TfrmSurgery.SaveSignItem procedure SaveSignItem(const ItemID, ESCode: string); -
SaveUnsignedOrders procedure SaveUnsignedOrders(pOrderRec:String); -
SendOrders procedure SendOrders(OrderList: TStringList; const ESCode: string); -
SetSAN function SetSAN(Self: TComponent): string; -
SignatureForItem procedure SignatureForItem(FontSize: Integer; const AText, ACaption: string; var ESCode: string); -
StoreDigitalSig procedure StoreDigitalSig(AID, AHash: string; AProvider: Int64; ASig, ACrlUrl, DFN: string; var AError: string); -
TfrmPrintLocation.SwitchEncounterLoction procedure SwitchEncounterLoction(pEncounterLoc: integer; pEncounterLocName, pEncounterLocText: string; pEncounterDT: TFMDateTime; pEncounterVC: Char); -
UnlockIfAble procedure UnlockIfAble; -
UnsignedOrderAlertFollowup function UnsignedOrderAlertFollowup(XQAID: string): string; -
UpdateExpiringMedAlerts procedure UpdateExpiringMedAlerts(PatientDFN: string); -
UpdateOrderDGIfNeeded procedure UpdateOrderDGIfNeeded(AnID: string); -
UpdateUnsignedOrderAlerts procedure UpdateUnsignedOrderAlerts(PatientDFN: string); -
UpdateUnverifiedMedAlerts procedure UpdateUnverifiedMedAlerts(PatientDFN: string); -
UpdateUnverifiedOrderAlerts procedure UpdateUnverifiedOrderAlerts(PatientDFN: string); -
ValidateOrderActionNature procedure ValidateOrderActionNature(const ID, Action, Nature: string; var ErrMsg: string); -
ValidESCode function ValidESCode(const ACode: string): Boolean; -

Called-By

Name Declaration Comments
ReviewChanges function ReviewChanges(TimedOut: Boolean; IsEvtChange: boolean = False): Boolean; -


Source

1155  procedure TfrmReview.cmdOKClick(Sender: TObject);
1156  { validate the electronic signature & call SaveSignItem for the encounter }
1157  const
1158    TX_NOSIGN  = 'Save items without signing?';
1159    TC_NOSIGN  = 'No Signature Entered';
1160    TX_SAVERR1 = 'The error, ';
1161    TX_SAVERR2 = ', occurred while trying to save:' + CRLF + CRLF;
1162    TC_SAVERR  = 'Error Saving Order';
1163  var
1164    i, k, idx, AType, PrintLoc, theSts, wardIEN, checki,checkj: Integer;
1165    SigSts, RelSts, Nature: Char;
1166    ESCode, AnID, AnErrMsg: string;
1167    ChangeItem, TempChangeItem: TChangeItem;
1168    OrderList, CSOrderList, TotalOrderList, OrderPrintList: TStringList;
1169    SaveCoPay, PINRetrieved: boolean;
1170    DigSigErr, DigStoreErr, CryptoChecked, displayEncSwitch, DelayOnly: Boolean;
1171    SigData, SigUser, SigDrugSch, SigDEA: string;
1172    cSignature, cHashData, cCrlUrl, cErr, WardName, ASvc: string;
1173    UsrAltName, IssuanceDate, PatientName, PatientAddress, DetoxNumber, ProviderName, ProviderAddress: string;
1174    DrugName, Quantity, Directions: string;
1175    cProvDUZ: Int64;
1176    AList, ClinicList, WardList: TStringList;
1177    IsOk, ContainsIMOOrders, DoNotPrint, checkfound : Boolean;
1178    EncLocName, EncLocText, tempInpLoc: string;
1179    EncLocIEN: integer;
1180    EncDT: TFMDateTime;
1181    EncVC: Char;  
1182    PINResult : TPINResult;
1183    PINLock : string;
1184  
1185    function OrdersSignedOrReleased: Boolean;
1186    var
1187      i: Integer;
1188    begin
1189      Result := False;
1190      for i := 0 to Pred(OrderList.Count) do
1191      begin
1192        if Pos('R', Piece(OrderList[i], U, 2)) > 0 then Result := True;
1193        if Pos('S', Piece(OrderList[i], U, 2)) > 0 then Result := True;
1194        if Result then Break;
1195      end;
1196    end;
1197  
1198    function OrdersToBeSignedOrReleased: Boolean;
1199    var
1200      i: Integer;
1201      s,x: string;
1202    begin
1203      Result := FALSE;
1204  
1205      for i := 0 to Pred(OrderList.Count) do
1206      begin
1207        s := Piece(OrderList[i], U, 2);
1208        x := s[1];
1209        if ((s <> '') and (s[1] in [SS_ONCHART, SS_ESIGNED, SS_NOTREQD])) or
1210           (Piece(OrderList[i], U, 3) = RS_RELEASE) then
1211        begin
1212           Result := TRUE;
1213           Break;
1214        end;
1215      end;
1216  
1217      for i := 0 to Pred(csOrderList.Count) do
1218      begin
1219        s := Piece(CSOrderList[i], U, 2);
1220        x := s[1];
1221        if ((s <> '') and (s[1] in [SS_ONCHART, SS_ESIGNED, SS_NOTREQD])) or
1222           (Piece(CSOrderList[i], U, 3) = RS_RELEASE) then
1223        begin
1224           Result := TRUE;
1225           Break;
1226        end;
1227      end;
1228    end; 
1229  
1230    function Piece2end (s,del: string): string;
1231    var
1232      i: Integer;
1233    begin
1234      i := Pos(del,s);
1235      Result := copy(s,i+1,length(s));
1236    end;
1237  
1238    procedure Log2File(  crypto: tCryptography) ;
1239    var
1240      f: TextFile;
1241    begin
1242      AssignFile(f,'c:\hashLog.txt');
1243      if not(FileExists('c:\hashLog.txt')) then
1244      begin
1245        ReWrite(f) ;
1246        Write(f,'cprs 29 hash log' + CRLF + CRLF);
1247        CloseFile(f);
1248      end;
1249  
1250      Append(f);
1251      WriteLn(f, '==============' + crypto.OrderNumber + CRLF +
1252                        'IssuanceDate: "' + crypto.IssuanceDate + '"' + CRLF +
1253                        'DrugName: "' + crypto.DrugName + '"' + CRLF +
1254                        'Quantity: "' + crypto.Quantity + '"' + CRLF +
1255                        'Directions: "' + crypto.Directions + '"' + CRLF +
1256                        'DetoxNumber: "' + crypto.DetoxNumber + '"' + CRLF +
1257                        'DeaNumber: "' + crypto.DeaNumber + '"' + CRLF +
1258                        'OrderNumber: "' + crypto.OrderNumber + '"' + CRLF +
1259                        CRLF);
1260      CloseFile(f);
1261    end;
1262  
1263  begin
1264    IsOk := True;
1265    ESCode := '';
1266    SaveCoPay := FALSE;
1267    PrintLoc := 0;
1268    EncLocIEN := 0;
1269    DoNotPrint := False;
1270    tempInpLoc := '';
1271    DelayOnly := false;
1272    if BILLING_AWARE then
1273    begin
1274       if Assigned(UBAGlobals.UnsignedOrders) then
1275          UBAGlobals.UnsignedOrders.Clear;
1276    end;
1277    if pnlSignature.Visible then
1278    begin
1279      ESCode := txtESCode.Text;
1280  
1281      if AnyItemsAreChecked and (Length(ESCode) > 0) and (not ValidESCode(ESCode)) then
1282      begin
1283        InfoBox(TX_INVAL_MSG, TX_INVAL_CAP, MB_OK);
1284        frmReview.ActiveControl := frmReview.txtESCode;
1285        txtESCode.SelectAll;
1286        Exit;
1287      end;
1288      if Length(ESCode) > 0 then ESCode := Encrypt(ESCode);
1289    end; {if pnlSignature}
1290  
1291    if not frmFrame.Closing then
1292    begin
1293      { save/sign orders }
1294      OrderList := TStringList.Create;
1295      CSOrderList := TStringList.Create;
1296      TotalOrderList := TStringList.Create;
1297      OrderPrintList := TStringList.create;
1298      ClinicList := TStringList.Create;
1299      WardList := TStringList.Create;
1300      ContainsIMOOrders := False;
1301      try
1302        Nature := NO_PROVIDER;
1303        case User.OrderRole of
1304        OR_NOKEY, OR_CLERK, OR_NURSE, OR_STUDENT:
1305          begin
1306            SigSts := SS_UNSIGNED;                   // default to med student values
1307            RelSts := RS_HOLD;
1308            Nature := NO_WRITTEN;
1309            if User.OrderRole in [OR_CLERK, OR_NURSE] then
1310            begin
1311              if radSignChart.Checked then SigSts := SS_ONCHART else SigSts := SS_UNSIGNED;
1312              if radRelease.Checked or radSignChart.Checked
1313                then RelSts := RS_RELEASE
1314                else RelSts := RS_HOLD;
1315              if radSignChart.Checked or radHoldSign.Checked then Nature := NO_WRITTEN
1316              else if radVerbal.Checked then Nature := NO_VERBAL
1317              else if radPhone.Checked  then Nature := NO_PHONE
1318              else if radPolicy.Checked then Nature := NO_POLICY
1319              else Nature := NO_WRITTEN;
1320              if not pnlOrderAction.Visible then     // if no orders require a signature
1321              begin
1322                RelSts := RS_RELEASE;
1323                Nature := NO_PROVIDER;
1324                SigSts := SS_NOTREQD;
1325              end;
1326              // the following was added due to patch OR*3.0*86
1327              if RelSts = RS_RELEASE then
1328              begin
1329                StatusText('Validating Release...');
1330                AnErrMsg := '';
1331                for i := 0 to lstReview.Items.Count - 1 do
1332                begin
1333                  ChangeItem := TChangeItem(lstReview.Items.Objects[i]);
1334                  if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) then
1335                  begin
1336                    ValidateOrderActionNature(ChangeItem.ID, OA_RELEASE, Nature, AnErrMsg);
1337                    if Length(AnErrMsg) > 0 then
1338                    begin
1339                      if IsInvalidActionWarning(ChangeItem.Text, ChangeItem.ID) then Break;
1340                      InfoBox(ChangeItem.Text + TX_NO_REL + AnErrMsg, TC_NO_REL, MB_OK);
1341                      Break;
1342                    end; {if Length(AnErrMsg)}
1343                  end; {if ChangeItem=CH_ORD}
1344                end; {for}
1345                StatusText('');
1346                if Length(AnErrMsg) > 0 then Exit;
1347              end; {if RelSts}
1348              // the following supports the change to allow nurses to sign policy orders
1349              if FSilent then RelSts := RS_HOLD;
1350              if (RelSts = RS_RELEASE) and pnlOrderAction.Visible then
1351              begin
1352                SignatureForItem(Font.Size, TX_ES_REQ, TC_ES_REQ, ESCode);
1353                if ESCode = '' then Exit;
1354                if Nature = NO_POLICY then SigSts := SS_ESIGNED;
1355              end;
1356            end; {if..ORCLERK, OR_NURSE}
1357  
1358            with lstReview do for i := 0 to Items.Count - 1 do
1359            begin
1360              ChangeItem := TChangeItem(Items.Objects[i]);
1361              if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) and (not radSignChart.Checked) then
1362              begin
1363                OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature);
1364                if BILLING_AWARE then
1365                  if not (User.DUZ = 0) and PersonHasKey(User.DUZ, 'PROVIDER') then
1366                     UBACore.SaveUnsignedOrders(ChangeItem.ID+ '1' + GetCheckBoxStatus(ChangeItem.ID) )
1367              end
1368              else if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) and (radSignChart.Checked) then
1369                OrderList.Add(ChangeItem.ID + U + SS_ONCHART + U + RS_RELEASE + U + NO_WRITTEN);
1370  
1371            end; {with lstReview}
1372  		  
1373  		 with lstCSReview do for i := 0 to Items.Count - 1 do
1374            begin
1375              ChangeItem := TChangeItem(Items.Objects[i]);
1376              if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) then
1377              begin
1378                OrderList.Add(ChangeItem.ID + U + SS_UNSIGNED + U + RS_HOLD + U + Nature);
1379                if BILLING_AWARE then
1380                  if not (User.DUZ = 0) and PersonHasKey(User.DUZ, 'PROVIDER') then
1381                     UBACore.SaveUnsignedOrders(ChangeItem.ID+ '1' + GetCheckBoxStatus(ChangeItem.ID) )
1382              end
1383            end;     {with lstCSReview}
1384  
1385          end; {OR_NOKEY, OR_CLERK, OR_NURSE, OR_STUDENT}
1386  
1387        OR_PHYSICIAN:
1388          begin
1389            Nature := NO_PROVIDER;
1390            with lstReview do for i := 0 to Items.Count - 1 do
1391            begin
1392              ChangeItem := TChangeItem(Items.Objects[i]);
1393              if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) then
1394                begin
1395                  case State[i] of
1396                  cbChecked:   if Length(ESCode) > 0 then
1397                               begin
1398                                 SigSts := SS_ESIGNED;
1399                                 RelSts := RS_RELEASE;
1400                                 OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature);
1401                               end else
1402                               begin
1403                                 if BILLING_AWARE then
1404                                    UBACore.SaveUnsignedOrders(ChangeItem.ID+ '1' + GetCheckBoxStatus(ChangeItem.ID) );
1405                                 SigSts := SS_UNSIGNED;
1406                                 RelSts := RS_HOLD;
1407                               end;
1408                  cbGrayed:    if OrderRequiresSignature(ChangeItem.ID) then
1409                               begin
1410                                 SigSts := SS_UNSIGNED;
1411                                 RelSts := RS_HOLD;
1412                               end else
1413                               begin
1414                                 SigSts := SS_NOTREQD;
1415                                 RelSts := RS_RELEASE;
1416                               end;
1417                  else         begin                   // (cbUnchecked)
1418                                 SigSts := SS_UNSIGNED;
1419                                 RelSts := RS_HOLD;
1420                               end;
1421                  end; {case State}
1422  
1423                  if (ChangeItem.GroupName = 'Other Unsigned') and (SigSts = SS_UNSIGNED) and (RelSts = RS_HOLD)
1424                    then //NoOp - don't add unsigned orders from outside session to the list
1425                    else
1426                    begin
1427                      if not(State[i] = cbChecked) and (OrderList.IndexOf(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature) < 0) then
1428                        OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature)
1429                      else if (cmdOK.Caption = 'Don''t Sign') and (OrderList.IndexOf(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature) < 0) then
1430                        OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature);
1431                    end;
1432              end; {if ItemType}
1433            end; {with lstReview}
1434  
1435  
1436  
1437            with lstCSReview do for i := 0 to Items.Count - 1 do
1438            begin
1439              ChangeItem := TChangeItem(Items.Objects[i]);
1440              if (ChangeItem <> nil) and (ChangeItem.ItemType = CH_ORD) then
1441                begin
1442                  case State[i] of
1443                  cbChecked:   if Length(ESCode) > 0 then
1444                               begin
1445                                 SigSts := SS_ESIGNED;
1446                                 RelSts := RS_RELEASE;
1447                                 if ChangeItem.DCOrder then OrderList.Add(ChangeItem.ID + U + SS_ESIGNED + U + RelSts + U + Nature)
1448                                 else CSOrderList.Add(ChangeItem.ID + U + SS_DIGSIG + U + RelSts + U + Nature);
1449                               end else
1450                               begin
1451                                 if BILLING_AWARE then
1452                                    UBACore.SaveUnsignedOrders(ChangeItem.ID+ '1' + GetCheckBoxStatus(ChangeItem.ID) );
1453                                 SigSts := SS_UNSIGNED;
1454                                 RelSts := RS_HOLD;
1455                               end;
1456                  cbGrayed:    if OrderRequiresSignature(ChangeItem.ID) then
1457                               begin
1458                                 SigSts := SS_UNSIGNED;
1459                                 RelSts := RS_HOLD;
1460                               end else
1461                               begin
1462                                 SigSts := SS_NOTREQD;
1463                                 RelSts := RS_RELEASE;
1464                               end;
1465                  else         begin                   // (cbUnchecked)
1466                                 SigSts := SS_UNSIGNED;
1467                                 RelSts := RS_HOLD;
1468                               end;
1469                  end; {case State}
1470  
1471                  if (ChangeItem.GroupName = 'Other Unsigned') and (SigSts = SS_UNSIGNED) and (RelSts = RS_HOLD)
1472                    then //NoOp - don't add unsigned orders from outside session to the list
1473                  else
1474                    begin
1475                      if not(State[i] = cbChecked) and (OrderList.IndexOf(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature) < 0) then
1476                        OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature)
1477                      else if (cmdOK.Caption = 'Don''t Sign') and (OrderList.IndexOf(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature) < 0) then
1478                        OrderList.Add(ChangeItem.ID + U + SigSts + U + RelSts + U + Nature);
1479                    end;
1480              end; {if ItemType}
1481            end; {with lstCSReview}
1482  
1483  //add csorderlist to totalorderlist in order to do order checking
1484  for i := 0 to CSOrderList.Count - 1 do
1485  begin
1486    TotalOrderList.add(CSOrderList.strings[i]);
1487  end;
1488  
1489  //add orderlist to totalorderlist in order to do order checking
1490  for i := 0 to OrderList.Count - 1 do
1491  begin
1492    TotalOrderList.add(OrderList.strings[i]);
1493  end;
1494  //do order checkign on totalorderlist.  Any order's cancelled will no longer be in totalorderlist
1495  While (TotalOrderList.Count > 0) do
1496  begin
1497    IsOk := ExecuteSessionOrderChecks(TotalOrderList);  // any cancelled orders will be removed from OrderList
1498    if IsOk then Break;
1499  end;
1500  //remove any orders from csorderlist that are no longer part of totalorderlist
1501  i := CSOrderList.Count - 1;
1502  while i>=0 do
1503  begin
1504    if (TotalOrderList.IndexOf(CSOrderList.strings[i])=-1) then CSOrderList.Delete(i);
1505    i := i - 1;
1506  end;
1507  
1508  //remove any orders from orderlist that are no longer part of totalorderlist   
1509  i := OrderList.Count - 1;
1510  while i>=0 do
1511  begin
1512    if (TotalOrderList.IndexOf(OrderList.strings[i])=-1) then OrderList.Delete(i);
1513    i := i - 1;
1514  end;
1515  
1516            if CSOrderList.Count > 0 then
1517            begin
1518            //check if sc boxes were answered here before dig signing process
1519            inherited;
1520            if not IsUserNurseProvider(User.DUZ) then
1521            begin
1522                 if (not SigItems.OK2SaveSettings) or (not SigItemsCS.OK2SaveSettings) then
1523                 begin
1524                   if (cmdOk.Caption = 'Don''t Sign') then
1525                      //
1526                   else
1527                   begin
1528                      InfoBox(TX_Order_Error, 'Review/Sign Orders', MB_OK);
1529                      Exit;
1530                   end
1531                 end;
1532            end;
1533            
1534            LastPINvalue := '';
1535            //isXuDSigSLogging := true;
1536            PINRetrieved := false;
1537            //get altusername
1538            UsrAltName := sCallV('XUS PKI GET UPN', []);
1539            //if SAN is blank then attempt to retrieve from card to set it
1540            if UsrAltName='' then
1541            begin
1542              UsrAltName := SetSAN(fReview.frmReview);
1543              if not(UsrAltName='')  then
1544              begin
1545                PINRetrieved := true;
1546              end;
1547            end;
1548            //if still blank then cancel digital signing
1549            if UsrAltName='' then PINResult := prCancel
1550            else if not(PINRetrieved) then
1551            try
1552            begin
1553              PINLock := sCallV('ORDEA PINLKCHK', []);
1554              if PINLock = '1' then PINResult := prLocked
1555              else PINResult := checkPINValue(fReview.frmReview);
1556            end
1557            except
1558             PINResult := prError;
1559            end;
1560  
1561            if PINResult = prError then ShowMsg('Problem getting PIN.  Cannot Digitally Sign.')
1562            else if PINResult=prLocked then
1563            begin
1564              if PINLock = '0' then sCallV('ORDEA PINLKSET', []);
1565              ShowMsg('Card has been locked.  Cannot Digitally Sign.')
1566            end
1567            else if PINResult=prCancel then ShowMsg('Digital Signing has been cancelled.')
1568            else
1569              begin
1570                try
1571                begin
1572                  crypto := tCryptography.Create;
1573                  //call rpc to get hash fields other than drug info
1574                  CallV('ORDEA HASHINFO', [Patient.DFN, User.DUZ]);
1575                  for i := 0 to RPCBrokerV.Results.Count -1 do
1576                  begin
1577                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'IssuanceDate' then IssuanceDate := Piece2end(RPCBrokerV.Results.Strings[i],':');
1578                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'PatientName' then PatientName := Piece2end(RPCBrokerV.Results.Strings[i],':');
1579                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'PatientAddress' then PatientAddress := Piece2end(RPCBrokerV.Results.Strings[i],':');
1580                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'DetoxNumber' then DetoxNumber := Piece2end(RPCBrokerV.Results.Strings[i],':');
1581                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'ProviderName' then ProviderName := Piece2end(RPCBrokerV.Results.Strings[i],':');
1582                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'ProviderAddress' then ProviderAddress := Piece2end(RPCBrokerV.Results.Strings[i],':');
1583                    if Piece(RPCBrokerV.Results.Strings[i],':',1) = 'DeaNumber' then SigDEA := Piece2end(RPCBrokerV.Results.Strings[i],':');
1584                  end;
1585                  for i := 0 to CSOrderList.Count - 1 do
1586                  begin
1587                    CallV('ORDEA ORDHINFO', [Piece(Piece(CSOrderList.strings[i],U,1),';',1)]);
1588                    DrugName := '';
1589                    Quantity := '';
1590                    Directions := '';
1591                    for k := 0 to RPCBrokerV.Results.Count -1 do
1592                    begin
1593                      if Piece(RPCBrokerV.Results.Strings[k],':',1) = 'DrugName' then DrugName := Piece2end(RPCBrokerV.Results.Strings[k],':');
1594                      if Piece(RPCBrokerV.Results.Strings[k],':',1) = 'Quantity' then Quantity := Piece2end(RPCBrokerV.Results.Strings[k],':');
1595                      if Piece(RPCBrokerV.Results.Strings[k],':',1) = 'Directions' then Directions := Piece(Piece2end(RPCBrokerV.Results.Strings[k],':'),U,1);
1596                    end;
1597                    try
1598                      crypto.Reset;
1599                      crypto.isDEAsig := true;
1600                      crypto.UsrName := User.Name;
1601                      crypto.UsrAltName := UsrAltName;
1602                      crypto.IssuanceDate :=  IssuanceDate;
1603                      crypto.PatientName :=   PatientName;
1604                      crypto.PatientAddress :=  PatientAddress;
1605                      crypto.DrugName :=     DrugName;
1606                      crypto.Quantity :=   Quantity;
1607                      crypto.Directions :=  Directions;
1608                      crypto.DetoxNumber :=  ''; //DetoxNumber;  don't include detox in hash calc
1609                      crypto.ProviderName :=  ProviderName;
1610                      crypto.ProviderAddress :=  ProviderAddress;
1611                      crypto.DeaNumber :=      SigDEA;
1612                      crypto.OrderNumber :=   Piece(Piece(CSOrderList.strings[i],U,1),';',1);
1613  
1614                      if false then Log2File(crypto);
1615                      
1616  
1617                      if crypto.SignData = true then
1618                      begin
1619                        cSignature := crypto.SignatureStr;
1620                        cHashData := crypto.HashStr;
1621                        cCrlUrl := crypto.CrlUrl;
1622                      end
1623                      else
1624                      begin
1625                        ShowMsg('Could not digitally sign. An error has occurred: Hash generation failed'+CRLF+CRLF+crypto.Reason);
1626                      DigStoreErr := true;
1627                      end;
1628  
1629                    except
1630                      on  E: Exception do
1631                        begin
1632                          ShowMsg('Could not digitally sign. An error has occurred: '+ E.Message);
1633                          DigStoreErr := true;
1634                        end;
1635                    end;
1636  
1637                    if DigStoreErr then
1638                      //messages shown above
1639                    else
1640                    begin
1641                      cErr := '';
1642                      StoreDigitalSig(Piece(CSOrderList.Strings[i],U,1), cHashData, User.DUZ, cSignature, cCrlUrl, Patient.DFN, cErr);
1643                      if cErr = '' then
1644                      begin
1645                        UpdateOrderDGIfNeeded(Piece(CSOrderList.Strings[i],U,1));
1646                        OrderList.Add(CSOrderList.Strings[i]);
1647                        BAOrderList.Add(Piece(CSOrderList.Strings[i],U,1));
1648                      end;
1649                    end;
1650                  end;
1651                end;
1652                finally
1653                  if not(crypto=nil) then
1654                  begin
1655                    crypto.Free;
1656                    crypto := nil;
1657                  end;
1658                end;
1659              end;
1660            end;
1661          end; {OR_PHYSICIAN}
1662        end; {case User.OrderRole}
1663        if BILLING_AWARE then
1664           if UBAGlobals.UnsignedOrders.Count > 0 then
1665             UBACore.BuildSaveUnsignedList(UBAGlobals.UnsignedOrders);
1666  
1667            // if true BA data in not mandatory.
1668            if not IsUserNurseProvider(User.DUZ) then
1669            begin
1670               if OrdersToBeSignedOrReleased then
1671               begin
1672                 if (not SigItems.OK2SaveSettings) or (not SigItemsCS.OK2SaveSettings) then
1673                 begin
1674                   if (cmdOk.Caption = 'Don''t Sign') then
1675                      SaveCoPay := TRUE
1676                   else
1677                   begin
1678                      InfoBox(TX_Order_Error, 'Review/Sign Orders', MB_OK);
1679                      Exit;
1680                   end
1681                 end
1682                 else
1683                   SaveCoPay := TRUE;
1684              end
1685              else
1686                 SaveCoPay := TRUE;
1687  
1688             {Begin BillingAware}
1689              if  BILLING_AWARE then
1690              begin
1691                if (cmdOk.Caption = 'Sign') then
1692                  begin
1693                    if Not UBACore.BADxEntered then
1694                    begin
1695                       InfoBox(TX_NO_DX, TC_NO_DX, MB_OK);
1696                       Exit;
1697                    end;
1698                  end;
1699                {End BillingAware}
1700               end;
1701            end;
1702  
1703        // make sure all cs orders are in the orderlist.  if not add them as usnigned/hold
1704        for checki := 0 to CSOrderList.Count -1 do
1705        begin
1706          checkfound := false;
1707          for checkj := 0 to OrderList.Count - 1 do
1708          begin
1709            if Piece(OrderList[checkj],U,1) = Piece(CSOrderList[checki],U,1) then checkfound := true;
1710          end;
1711          if not(checkfound) then OrderList.Add(Piece(CSOrderList[checki],U,1) + U + SS_UNSIGNED + U + RS_HOLD + U + Piece(CSOrderList[checki],U,4));
1712        end;
1713  
1714  
1715        {release & print orders}
1716        // test for LockedForOrdering is to make sure patient is locked if pulling in all unsigned
1717        if (User.OrderRole in [OR_NOKEY..OR_STUDENT]) and (OrderList.Count > 0)and LockedForOrdering then
1718        begin
1719          StatusText('Sending Orders to Service(s)...');
1720          if (OrderList.Count > 0) then
1721          begin
1722          //hds7591  Clinic/Ward movement.  Nurse orders
1723            if (cmdOk.Caption = 'Sign') or (cmdOK.Caption = 'OK') and (not frmFrame.TimedOut) then
1724            begin
1725               tempInpLoc := frmPrintLocation.rpcIsPatientOnWard(patient.dfn);
1726               if ((Patient.Inpatient = false) and (tempInpLoc <> '')) or
1727                   ((Patient.Inpatient = True) and (Encounter.Location <> Patient.Location)) or
1728                   ((Patient.Inpatient = True) and (Encounter.Location = Patient.Location) and
1729                   (encounter.Location <> uCore.TempEncounterLoc) and (uCore.TempEncounterLoc <> 0))
1730                   or((Patient.Inpatient) and (tempInpLoc <> '') and (Piece(tempInpLoc, U, 2) <> InttoStr(Encounter.location))) then
1731               begin
1732                   if (Encounter.Location <> Patient.Location) or
1733                       ((tempInpLoc <> '') and ((InttoStr(Encounter.location)) <> (Piece(tempInpLoc,U,2)))) then
1734                     begin
1735                       EncLocName := Encounter.LocationName;
1736                       EncLocIEN  := Encounter.Location;
1737                       EncLocText := Encounter.LocationText;
1738                       EncDT := Encounter.DateTime;
1739                       EncVC := Encounter.VisitCategory;
1740                     end
1741                   else
1742                      begin
1743                       EncLocName := uCore.TempEncounterLocName;
1744                       EncLocIEN  := uCore.TempEncounterLoc;
1745                       EncLocText := uCore.TempEncounterText;
1746                       EncDT := uCore.TempEncounterDateTime;
1747                       EncVC := uCore.TempEncounterVistCat;
1748                      end;
1749                   if frmFrame.mnuFile.Tag = 0 then displayEncSwitch := false
1750                   else displayEncSwitch := true;
1751                   if Encounter.Location = 0  then
1752                     begin
1753                       DisplayEncSwitch := True;
1754                       DelayOnly := True;
1755                     end;
1756                   for i := 0 to lstReview.Items.Count-1 do
1757                     begin
1758                      //disregard orders that are not signed
1759                      if (lstReview.Checked[i] = false) and (lstReview.State[i] <> cbGrayed) then continue;
1760                      TempChangeItem := TChangeItem(lstReview.Items.Objects[i]);
1761                      //DC Orders should print at the ward location
1762                      if TempChangeItem.DCOrder = True then
1763                        begin
1764                          WardList.Add(tempChangeItem.ID);
1765                          continue;
1766                        end;
1767                      //disregard Non-VA Meds orders
1768                      if TempChangeItem.OrderDG = NONVAMEDGROUP then continue;
1769                      if TempChangeItem.OrderDG = 'Clinic Orders' then ContainsIMOORders := true;
1770                      if (tempChangeItem.OrderDG = '') then continue;
1771                      //Delay orders should be printed when the order is release to service not when the order is sign
1772                      if tempChangeItem.Delay = True then continue;
1773                      OrderPrintList.Add(tempChangeItem.ID + ':' + tempChangeItem.Text);
1774                     end;
1775                   if (OrderPrintList.Count > 0) and (DelayOnly = False) then
1776                      frmPrintLocation.PrintLocation(OrderPrintList, EncLocIEN, EncLocName, EncLocText, EncDT, EncVC, ClinicList,
1777                                                     WardList, wardIEN, wardName, ContainsIMOOrders, displayEncSwitch)
1778                    //Only Display encounter switch form if staying in the patient chart
1779                    else if displayEncSwitch = true then
1780                      begin
1781                        frmPrintLocation.SwitchEncounterLoction(EncLocIEN, EncLocName, EncLocText, EncDT, EncVC);
1782                        fFrame.frmFrame.OrderPrintForm := True;
1783                        DoNotPrint := True;
1784                      end;
1785                   if (WardIEN = 0) and (WardName = '') then CurrentLocationForPatient(Patient.DFN, WardIEN, WardName, ASvc);
1786                    //All other scenarios should not print
1787                   if (ClinicList.count = 0) and (WardList.count = 0) then DoNotPrint := True;
1788               end;
1789            end;
1790            if (cmdOk.Caption = 'Don''t Sign') and (not frmFrame.TimedOut) and (frmFrame.mnuFile.Tag <> 0) then
1791                 begin
1792                   tempInpLoc := frmPrintLocation.rpcIsPatientOnWard(patient.dfn);
1793                   if ((Patient.Inpatient = false) and (tempInpLoc <> '')) or
1794                   ((Patient.Inpatient = True) and (Encounter.Location <> Patient.Location)) or
1795                   ((Patient.Inpatient = True) and (Encounter.Location = Patient.Location) and
1796                   (encounter.Location <> uCore.TempEncounterLoc) and (uCore.TempEncounterLoc <> 0))
1797                   or((Patient.Inpatient) and (tempInpLoc <> '') and (Piece(tempInpLoc, U, 2) <> InttoStr(Encounter.location))) then
1798                      begin
1799                        if (Encounter.Location <> Patient.Location) or
1800                            ((tempInpLoc <> '') and ((InttoStr(Encounter.location)) <> (Piece(tempInpLoc,U,2)))) then
1801                          begin
1802                            EncLocName := Encounter.LocationName;
1803                            EncLocIEN  := Encounter.Location;
1804                            EncLocText := Encounter.LocationText;
1805                            EncDT := Encounter.DateTime;
1806                            EncVC := Encounter.VisitCategory;
1807                          end
1808                        else
1809                          begin
1810                            EncLocName := uCore.TempEncounterLocName;
1811                            EncLocIEN  := uCore.TempEncounterLoc;
1812                            EncLocText := uCore.TempEncounterText;
1813                            EncDT := uCore.TempEncounterDateTime;
1814                            EncVC := uCore.TempEncounterVistCat;
1815                          end;
1816                          frmPrintLocation.SwitchEncounterLoction(EncLocIEN, EncLocName, EncLocText, EncDT, EncVC);
1817                          fFrame.frmFrame.OrderPrintForm := True;
1818                      end;
1819                 end;
1820            uCore.TempEncounterLoc := 0;
1821            uCore.TempEncounterLocName := '';
1822            tempInpLoc := '';
1823          end;
1824          //hds7591  Clinic/Ward movement.
1825          
1826            if SaveCoPay then
1827              begin
1828                SigItems.SaveSettings; // Save CoPay FIRST
1829                SigItemsCS.SaveSettings;
1830              end;
1831  
1832            SendOrders(OrderList, ESCode);   {*KCM*}
1833  
1834  
1835        //CQ #15813 Modired code to look for error string mentioned in CQ and change strings to conts - JCS
1836          with OrderList do for i := 0 to Count - 1 do
1837          begin
1838            if Pos('E', Piece(OrderList[i], U, 2)) > 0 then
1839            begin
1840              ChangeItem := Changes.Locate(CH_ORD, Piece(OrderList[i], U, 1));
1841              if not FSilent then
1842                begin
1843                  if Piece(OrderList[i],U,4) = TX_SAVERR_PHARM_ORD_NUM_SEARCH_STRING then
1844                    InfoBox(TX_SAVERR1 + Piece(OrderList[i], U, 4) + TX_SAVERR2 + ChangeItem.Text + CRLF + CRLF +
1845                          TX_SAVERR_PHARM_ORD_NUM, TC_SAVERR, MB_OK)
1846                  else if Piece(OrderList[i],U,4) = TX_SAVERR_IMAGING_PROC_SEARCH_STRING then
1847                    InfoBox(TX_SAVERR1 + Piece(OrderList[i], U, 4) + TX_SAVERR2 + ChangeItem.Text + CRLF + CRLF +
1848                          TX_SAVERR_IMAGING_PROC, TC_SAVERR, MB_OK)
1849                  else
1850                   InfoBox(TX_SAVERR1 + Piece(OrderList[i], U, 4) + TX_SAVERR2 + ChangeItem.Text,
1851                      TC_SAVERR, MB_OK);
1852                end;
1853            end;
1854            if Pos('R', Piece(OrderList[i], U, 2)) > 0 then
1855              NotifyOtherApps(NAE_ORDER, 'RL' + U + Piece(OrderList[i], U, 1));
1856          end;
1857          if OrdersSignedOrReleased and (not FSilent) then
1858          begin
1859            for idx := OrderList.Count - 1 downto 0 do
1860            begin
1861              if Pos('E', Piece(OrderList[idx], U, 2)) > 0 then
1862              begin
1863                OrderList.Delete(idx);
1864                Continue;
1865              end;
1866              theSts := GetOrderStatus(Piece(OrderList[idx],U,1));
1867              if theSts = 10 then  OrderList.Delete(idx);  //signed delayed order should not be printed.
1868            end;
1869            //  CQ 10226, PSI-05-048 - advise of auto-change from LC to WC on lab orders
1870            AList := TStringList.Create;
1871            try
1872              CheckForChangeFromLCtoWCOnRelease(AList, Encounter.Location, OrderList);
1873              if AList.Text <> '' then
1874                ReportBox(AList, 'Changed Orders', TRUE);
1875            finally
1876              AList.Free;
1877            end;
1878            if (ClinicList.Count > 0) or (WardList.Count > 0) then
1879                  PrintOrdersOnSignReleaseMult(OrderList, CLinicList, WardList, Nature, EncLocIEN, WardIEN, EncLocName, wardName)
1880            else if DoNotPrint = False then PrintOrdersOnSignRelease(OrderList, Nature, PrintLoc);
1881          end;
1882          StatusText('');
1883          UpdateUnsignedOrderAlerts(Patient.DFN);
1884          with Notifications do
1885            if Active and (FollowUp = NF_ORDER_REQUIRES_ELEC_SIGNATURE) then
1886              UnsignedOrderAlertFollowup(Piece(RecordID, U, 2));
1887          UpdateExpiringMedAlerts(Patient.DFN);
1888          UpdateUnverifiedMedAlerts(Patient.DFN);
1889          UpdateUnverifiedOrderAlerts(Patient.DFN);
1890          SendMessage(Application.MainForm.Handle, UM_NEWORDER, ORDER_SIGN, 0);
1891        end; {if User.OrderRole}
1892  
1893      finally
1894        FreeAndNil(OrderList);
1895        FreeAndNil(OrderPrintList);
1896        FreeAndNil(ClinicList);
1897        FreeAndNil(WardList);
1898      end;
1899      if not(crypto=nil) then
1900      begin
1901        crypto.Free;
1902        crypto := nil;
1903      end;
1904    end;
1905  
1906    { save/sign documents }
1907    with lstReview do for i := 0 to Items.Count - 1 do
1908    begin
1909      ChangeItem := TChangeItem(Items.Objects[i]);
1910      if ChangeItem <> nil then with ChangeItem do
1911        case ItemType of
1912        CH_DOC: if Checked[i]
1913                  then frmNotes.SaveSignItem(ChangeItem.ID, ESCode)
1914                  else frmNotes.SaveSignItem(ChangeItem.ID, '');
1915        CH_CON: if Checked[i]
1916                  then frmConsults.SaveSignItem(ChangeItem.ID, ESCode)
1917                  else frmConsults.SaveSignItem(ChangeItem.ID, '');
1918        CH_SUM: if Checked[i]
1919                  then frmDCSumm.SaveSignItem(ChangeItem.ID, ESCode)
1920                  else frmDCSumm.SaveSignItem(ChangeItem.ID, '');
1921        CH_SUR: if Assigned(frmSurgery) then
1922                begin
1923                  if Checked[i]
1924                    then frmSurgery.SaveSignItem(ChangeItem.ID, ESCode)
1925                    else frmSurgery.SaveSignItem(ChangeItem.ID, '');
1926                end;
1927        end; {case}
1928    end; {with lstReview}
1929    if frmFrame.Closing then exit;
1930  
1931    // clear all the items that were on the list (but not all in Changes)
1932    with lstReview do for i := Items.Count - 1 downto 0  do
1933    begin
1934      if (not Assigned(Items.Objects[i])) then continue;   {**RV**}
1935      ChangeItem := TChangeItem(Items.Objects[i]);
1936      if ChangeItem <> nil then
1937      begin
1938        AnID := ChangeItem.ID;
1939        AType := ChangeItem.ItemType;
1940        Changes.Remove(AType, AnID);
1941      end;
1942    end;
1943    with lstCSReview do for i := Items.Count - 1 downto 0  do
1944    begin
1945      if (not Assigned(Items.Objects[i])) then continue;   {**RV**}
1946      ChangeItem := TChangeItem(Items.Objects[i]);
1947      if ChangeItem <> nil then
1948      begin
1949        AnID := ChangeItem.ID;
1950        AType := ChangeItem.ItemType;
1951        Changes.Remove(AType, AnID);
1952      end;
1953    end;
1954    UnlockIfAble;
1955    FOKPressed := IsOk;
1956    Close;
1957  end;