YS119PST ;SLC/KCM - Patch 119 post-init - PCL-5 ; 9/15/2015
 ;;5.01;MENTAL HEALTH;**119**;Dec 30, 1994;Build 40
 Q
 ;
POST ; Post-init calls for patch 119
 D PCL5
 D FIXTESTS^YS119PS0
 Q
PCL5 ; Update the PCL-5 definitions
 D FIXDATE^YS119PS3 ; update the date prompt
 D UPDPCLQ  ; update the PCL-5 questions
 D UPDCPLX  ; update tests that are scored by DLL only
 D DROPPCL  ; disable the PCL tests replaced by PCL-5
 D ADDSCLS  ; add scales for cluster B-E scores
 D UPDPCLR  ; update PCL-5 report
 N TSTIEN   ; make sure definition reloaded by clients 
 S TSTIEN=$$FINDTEST^YS119PS0("PCL-5")
 D UPDDT^YS119PS0(TSTIEN)
 Q
UPDPCLQ ; Update the PCL-5 questions
 N QUES,PCL5,CONTENT,DESIG,QIEN,X0
 ; set up the replacement questions
 S QUES("10.")=$P($T(Q10),";;",2,99)
 S QUES("14.")=$P($T(Q14),";;",2,99)
 S QUES("15.")=$P($T(Q15),";;",2,99)
 S QUES("16.")=$P($T(Q16),";;",2,99)
 ; get the ien for PCL-5
 S PCL5=$O(^YTT(601.71,"B","PCL-5",0))
 ; loop through PCL-5 content, find the questions with matching "designator"
 S CONTENT=0 F  S CONTENT=$O(^YTT(601.76,"AC",PCL5,CONTENT)) Q:'CONTENT  D
 . S X0=^YTT(601.76,CONTENT,0),DESIG=$P(X0,U,5)
 . Q:'$L(DESIG)        ; no designator
 . Q:'$D(QUES(DESIG))  ; no matching replacement
 . S QIEN=$P(X0,U,4)
 . ;
 . N WP,DIERR
 . S WP(1)=QUES(DESIG)
 . D WP^DIE(601.72,QIEN_",",1,"","WP")
 . I $D(DIERR) D BMES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 . D CLEAN^DILF
 Q
 ;
UPDCPLX ; Update complex (DLL-scored) test entries
 N IDX,TSTNM,TSTIEN
 S IDX=0 F  S IDX=IDX+1,TSTNM=$P($T(DLLTEST+IDX),";;",2) Q:TSTNM="zzzzz"  D
 . S TSTIEN=$O(^YTT(601.71,"B",TSTNM,0)) Q:'TSTIEN
 . D FLD2DLL(TSTIEN) ; update TAG and ROUTINE for special scoring
 Q
FLD2DLL(TSTIEN) ; update record to contain DLL^YTSCORE
 N FDA,DIERR
 S FDA(601.71,TSTIEN_",",91)="DLL"
 S FDA(601.71,TSTIEN_",",92)="YTSCORE"
 D FILE^DIE("","FDA")
 I $D(DIERR) D BMES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 D CLEAN^DILF
 Q
DROPPCL ; Disable the other PCL tests
 N TSTNM,TSTIEN
 F TSTNM="PCLC","PCLM","PCLS","NEOPI" D
 . S TSTIEN=$O(^YTT(601.71,"B",TSTNM,0)) Q:'TSTIEN
 . D FLD2DROP(TSTIEN) ; change OPERATIONAL to "Dropped"
 . D UPDDT^YS119PS0(TSTIEN)
 Q
FLD2DROP(TSTIEN) ; update OPERATIONAL field to be "Dropped"
 N FDA,DIERR
 S FDA(601.71,TSTIEN_",",10)="D"
 D FILE^DIE("","FDA")
 I $D(DIERR) D MES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 D CLEAN^DILF
 Q
ADDSCLS ; add scales for PCL-5
 N PCL5,GRP,SCALE,KEYID
 S KEYID=9725
 S PCL5=$O(^YTT(601.71,"B","PCL-5",0))  ; PCL-5 ien
 S GRP=$O(^YTT(601.86,"AC",PCL5,1,0))   ; ScaleGroup, Sequence 1 ien
 D ADDSCALE(.SCALE,990,GRP,2,"Cluster B") I SCALE D ADDKEYS(SCALE,1,5)
 D ADDSCALE(.SCALE,991,GRP,3,"Cluster C") I SCALE D ADDKEYS(SCALE,6,7)
 D ADDSCALE(.SCALE,992,GRP,4,"Cluster D") I SCALE D ADDKEYS(SCALE,8,14)
 D ADDSCALE(.SCALE,993,GRP,5,"Cluster E") I SCALE D ADDKEYS(SCALE,15,20)
 Q
ADDSCALE(SCALE,ID,GRP,SEQ,NM) ; add a new scale
 I $D(^YTT(601.87,"AC",GRP,SEQ)) D  Q  ; quit if scale already there
 . S SCALE=$O(^YTT(601.87,"AC",GRP,SEQ,0))
 ; if something already at ID, increment ID until empty node is found
 I $D(^YTT(601.87,ID)) F  S ID=ID+1 Q:'$D(^YTT(601.87,ID))
 ; use FM to add the new scale (PCL-5 Cluster x)
 N FDA,FDAIEN,DIERR
 S FDAIEN(1)=ID
 S FDA(601.87,"+1,",.01)=ID
 S FDA(601.87,"+1,",1)=GRP
 S FDA(601.87,"+1,",2)=SEQ
 S FDA(601.87,"+1,",3)=NM
 S FDA(601.87,"+1,",4)=NM
 D UPDATE^DIE("","FDA","FDAIEN")
 I $D(DIERR) D MES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 S SCALE=$S($D(DIERR):0,1:FDAIEN(1))
 D CLEAN^DILF
 Q
ADDKEYS(SCALE,FIRST,LAST) ; Add a set of scoring keys for PCL-5
 ; from: ADDSLCS expects: PCL5,KEYID
 N VALUES,VALUE,QNUM,QIEN,CIEN,X0,DESIG
 S VALUES(0)="Not at all"
 S VALUES(1)="A little bit"
 S VALUES(2)="Moderately"
 S VALUES(3)="Quite a bit"
 S VALUES(4)="Extremely"
 F QNUM=FIRST:1:LAST D
 . ; using designator, figure out the IEN for the question
 . S QIEN=0  ; QIEN=question IEN, CIEN=content IEN
 . S CIEN=0 F  S CIEN=$O(^YTT(601.76,"AC",PCL5,CIEN)) Q:'CIEN  D  Q:QIEN
 . . S X0=^YTT(601.76,CIEN,0),DESIG=$P(X0,U,5)
 . . I DESIG=(QNUM_".") S QIEN=$P(X0,U,4)
 . ; for the question (QIEN), add the 5 scoring keys for this scale
 . F VALUE=0:1:4 S KEYID=KEYID+1 D ADDKEY(KEYID,SCALE,QIEN,VALUES(VALUE),VALUE)
 Q
ADDKEY(ID,SCALE,QUESTION,TARGET,VALUE) ; add a new scoring key
 ; quit if key already there
 N EXISTS,I
 S EXISTS=0
 S I=0 F  S I=$O(^YTT(601.91,"AC",SCALE,I)) Q:'I  D  Q:EXISTS
 . I ($P(^YTT(601.91,I,0),U,3))=QUESTION,($P(^(0),U,4)=TARGET) S EXISTS=1
 Q:EXISTS
 ; if something already at ID, increment ID until empty node is found
 I $D(^YTT(601.91,ID)) F  S ID=ID+1 Q:'$D(^YTT(601.91,ID))
 ; use FM to add new key
 N FDA,FDAIEN,DIERR
 S FDAIEN(1)=ID
 S FDA(601.91,"+1,",.01)=ID
 S FDA(601.91,"+1,",1)=SCALE
 S FDA(601.91,"+1,",2)=QUESTION
 S FDA(601.91,"+1,",3)=TARGET
 S FDA(601.91,"+1,",4)=VALUE
 D UPDATE^DIE("","FDA","FDAIEN")
 I $D(DIERR) D MES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 D CLEAN^DILF
 Q
UPDPCLR ; update the PCL-5 report to include cluster information
 N PCL5,RPT,WP,I,X,DIERR
 S PCL5=$O(^YTT(601.71,"B","PCL-5",0))     ; PCL-5 ien
 S RPT=$O(^YTT(601.93,"C",PCL5,0)) Q:'RPT  ; Report ien
 F I=1:1 S X=$P($T(RPTFMT+I),";;",2,99) Q:X="zzzzz"  S WP(I)=X
 D WP^DIE(601.93,RPT_",",2,"","WP")
 I $D(DIERR) D MES^XPDUTL("ERROR: "_$G(^TMP("DIERR",$J,1,"TEXT",1)))
 D CLEAN^DILF
 Q
DLLTEST ; tests scored by DLL
 ;;BAM-C
 ;;BAM-R
 ;;BASIS-24
 ;;BHS
 ;;BSI
 ;;BSL-23
 ;;CAM
 ;;CDR
 ;;DBAS
 ;;DERS
 ;;FAD
 ;;FAST
 ;;ISMI
 ;;MDQ
 ;;MINICOG
 ;;MMPI-2-RF
 ;;NEO-PI-3
 ;;POQ
 ;;QOLI
 ;;QOLIE-31
 ;;SBR II
 ;;SOCRATES 8A
 ;;SOCRATES 8D
 ;;SST-VOF
 ;;SST-VOI
 ;;STMS
 ;;VR-12
 ;;WHODAS 2
 ;;WHOQOL-BREF
 ;;WHYMPI
 ;;zzzzz
 ;
Q10 ;;Blaming yourself or someone else for the stressful experience or what happened after it?
Q14 ;;Trouble experiencing positive feelings (for example, being unable to feel happiness or have loving feelings for people close to you)?
Q15 ;;Irritable behavior, angry outbursts, or acting aggressively?
Q16 ;;Taking too many risks or doing things that could cause you harm?
 ;
RPTFMT ; PCL-5 report text
 ;;.| PCL-5| | Date Given: <.Date_Given.>| Clinician: <.Staff_Ordered_By.>| Location: <.Location.>| | Veteran: <.Patient_Name_Last_First.>| SSN: <.Patient_SSN.>| DOB: <.Patient_Date_Of_Birth.>
 ;;(<.Patient_Age.>)| Gender: <.Patient_Gender.>| | |             PCL-5 Score:  <-PCL-5->| | Cluster B (items  1-5) :  <-Cluster B->| Cluster C (items  6-7) :  <-Cluster C->| Cluster D (items  8-14):
 ;;  <-Cluster D->| Cluster E (items 15-20):  <-Cluster E->| |
 ;;| Interpretive Statement:| PCL-5 has a total score range of 0-80, with higher scores indicating greater PTSD symptom severity.| |
 ;;  0-10:  no or minimal symptoms reported| 11-20:  mild symptoms reported| 21-40:  moderate symptoms reported| 41-60:  severe symptoms reported| 61-80:  very severe symptoms reported|
 ;; | | Questions and Answers: | | The event you experienced was: <*Answer_6839*>| | The event happened: <*Answer_6840*>| |  1. 
 ;;Repeated, disturbing, and unwanted memories of the stressful experience?|     <*Answer_6841*>|  2. Repeated, disturbing dreams of the stressful experience?|     <*Answer_6842*>|  3. Suddenly feeling or
 ;; acting as if the stressful experience were actually happening again (as if you were actually back there reliving it)?|     <*Answer_6843*>|  4. Feeling very upset when something reminded you of the
 ;; stressful experience?|     <*Answer_6844*>|  5. Having strong physical reactions when something reminded you of the stressful experience (for example, heart pounding, trouble breathing, sweating)?|
 ;;     <*Answer_6845*>|  6. Avoiding memories, thoughts, or feelings related to the stressful experience?|     <*Answer_6846*>|  7. Avoiding external reminders of the stressful experience (for example,
 ;; people, places, conversations, activities, objects, or situations)?|     <*Answer_6847*>|  8. Trouble remembering important parts of the stressful experience?|     <*Answer_6848*>|  9. Having strong
 ;; negative beliefs about yourself, other people, or the world (for example, having thoughts such as: I am bad, there is something seriously wrong with me, no one can be trusted, the world is
 ;; completely dangerous)?|     <*Answer_6849*>| 10. Blaming yourself or someone else for the stressful experience or what happened after it?|     <*Answer_6850*>| 11. Having strong negative
 ;; feelings such as fear, horror, anger, guilt, or shame?|     <*Answer_6851*>| 12. Loss of interest in activities that you used to enjoy?|     <*Answer_6852*>| 13. Feeling distant or cut off from other
 ;; people?|     <*Answer_6853*>| 14. Trouble experiencing positive feelings (for example, being unable to feel happiness or have loving feelings for people close to you)?|     
 ;;<*Answer_6854*>| 15. Irritable behavior, angry outbursts, or acting aggressively?|     <*Answer_6855*>| 16. Taking too many risks or doing things that could cause you harm?|     <*Answer_6856*>| 17. Being
 ;; "superalert" or watchful or on guard?|     <*Answer_6857*>| 18. Feeling jumpy or easily startled?|     <*Answer_6858*>| 19. Having difficulty concentrating?|     <*Answer_6859*>| 20. Trouble falling
 ;; or staying asleep?|     <*Answer_6860*>
 ;;| | 0=not at all  1=a little bit  2=moderately  3=quite a bit  4=extremely
 ;;| | Information contained in this note is based on a self-report assessment and is not sufficient to use alone for diagnostic purposes.  Assessment results
 ;; should be verified for accuracy and used in conjunction with other diagnostic activities and procedures.|  $~
 ;;zzzzz
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HYS119PST   9804     printed  Sep 23, 2025@19:48:08                                                                                                                                                                                                    Page 2
YS119PST  ;SLC/KCM - Patch 119 post-init - PCL-5 ; 9/15/2015
 +1       ;;5.01;MENTAL HEALTH;**119**;Dec 30, 1994;Build 40
 +2        QUIT 
 +3       ;
POST      ; Post-init calls for patch 119
 +1        DO PCL5
 +2        DO FIXTESTS^YS119PS0
 +3        QUIT 
PCL5      ; Update the PCL-5 definitions
 +1       ; update the date prompt
           DO FIXDATE^YS119PS3
 +2       ; update the PCL-5 questions
           DO UPDPCLQ
 +3       ; update tests that are scored by DLL only
           DO UPDCPLX
 +4       ; disable the PCL tests replaced by PCL-5
           DO DROPPCL
 +5       ; add scales for cluster B-E scores
           DO ADDSCLS
 +6       ; update PCL-5 report
           DO UPDPCLR
 +7       ; make sure definition reloaded by clients 
           NEW TSTIEN
 +8        SET TSTIEN=$$FINDTEST^YS119PS0("PCL-5")
 +9        DO UPDDT^YS119PS0(TSTIEN)
 +10       QUIT 
UPDPCLQ   ; Update the PCL-5 questions
 +1        NEW QUES,PCL5,CONTENT,DESIG,QIEN,X0
 +2       ; set up the replacement questions
 +3        SET QUES("10.")=$PIECE($TEXT(Q10),";;",2,99)
 +4        SET QUES("14.")=$PIECE($TEXT(Q14),";;",2,99)
 +5        SET QUES("15.")=$PIECE($TEXT(Q15),";;",2,99)
 +6        SET QUES("16.")=$PIECE($TEXT(Q16),";;",2,99)
 +7       ; get the ien for PCL-5
 +8        SET PCL5=$ORDER(^YTT(601.71,"B","PCL-5",0))
 +9       ; loop through PCL-5 content, find the questions with matching "designator"
 +10       SET CONTENT=0
           FOR 
               SET CONTENT=$ORDER(^YTT(601.76,"AC",PCL5,CONTENT))
               if 'CONTENT
                   QUIT 
               Begin DoDot:1
 +11               SET X0=^YTT(601.76,CONTENT,0)
                   SET DESIG=$PIECE(X0,U,5)
 +12      ; no designator
                   if '$LENGTH(DESIG)
                       QUIT 
 +13      ; no matching replacement
                   if '$DATA(QUES(DESIG))
                       QUIT 
 +14               SET QIEN=$PIECE(X0,U,4)
 +15      ;
 +16               NEW WP,DIERR
 +17               SET WP(1)=QUES(DESIG)
 +18               DO WP^DIE(601.72,QIEN_",",1,"","WP")
 +19               IF $DATA(DIERR)
                       DO BMES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +20               DO CLEAN^DILF
               End DoDot:1
 +21       QUIT 
 +22      ;
UPDCPLX   ; Update complex (DLL-scored) test entries
 +1        NEW IDX,TSTNM,TSTIEN
 +2        SET IDX=0
           FOR 
               SET IDX=IDX+1
               SET TSTNM=$PIECE($TEXT(DLLTEST+IDX),";;",2)
               if TSTNM="zzzzz"
                   QUIT 
               Begin DoDot:1
 +3                SET TSTIEN=$ORDER(^YTT(601.71,"B",TSTNM,0))
                   if 'TSTIEN
                       QUIT 
 +4       ; update TAG and ROUTINE for special scoring
                   DO FLD2DLL(TSTIEN)
               End DoDot:1
 +5        QUIT 
FLD2DLL(TSTIEN) ; update record to contain DLL^YTSCORE
 +1        NEW FDA,DIERR
 +2        SET FDA(601.71,TSTIEN_",",91)="DLL"
 +3        SET FDA(601.71,TSTIEN_",",92)="YTSCORE"
 +4        DO FILE^DIE("","FDA")
 +5        IF $DATA(DIERR)
               DO BMES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +6        DO CLEAN^DILF
 +7        QUIT 
DROPPCL   ; Disable the other PCL tests
 +1        NEW TSTNM,TSTIEN
 +2        FOR TSTNM="PCLC","PCLM","PCLS","NEOPI"
               Begin DoDot:1
 +3                SET TSTIEN=$ORDER(^YTT(601.71,"B",TSTNM,0))
                   if 'TSTIEN
                       QUIT 
 +4       ; change OPERATIONAL to "Dropped"
                   DO FLD2DROP(TSTIEN)
 +5                DO UPDDT^YS119PS0(TSTIEN)
               End DoDot:1
 +6        QUIT 
FLD2DROP(TSTIEN) ; update OPERATIONAL field to be "Dropped"
 +1        NEW FDA,DIERR
 +2        SET FDA(601.71,TSTIEN_",",10)="D"
 +3        DO FILE^DIE("","FDA")
 +4        IF $DATA(DIERR)
               DO MES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +5        DO CLEAN^DILF
 +6        QUIT 
ADDSCLS   ; add scales for PCL-5
 +1        NEW PCL5,GRP,SCALE,KEYID
 +2        SET KEYID=9725
 +3       ; PCL-5 ien
           SET PCL5=$ORDER(^YTT(601.71,"B","PCL-5",0))
 +4       ; ScaleGroup, Sequence 1 ien
           SET GRP=$ORDER(^YTT(601.86,"AC",PCL5,1,0))
 +5        DO ADDSCALE(.SCALE,990,GRP,2,"Cluster B")
           IF SCALE
               DO ADDKEYS(SCALE,1,5)
 +6        DO ADDSCALE(.SCALE,991,GRP,3,"Cluster C")
           IF SCALE
               DO ADDKEYS(SCALE,6,7)
 +7        DO ADDSCALE(.SCALE,992,GRP,4,"Cluster D")
           IF SCALE
               DO ADDKEYS(SCALE,8,14)
 +8        DO ADDSCALE(.SCALE,993,GRP,5,"Cluster E")
           IF SCALE
               DO ADDKEYS(SCALE,15,20)
 +9        QUIT 
ADDSCALE(SCALE,ID,GRP,SEQ,NM) ; add a new scale
 +1       ; quit if scale already there
           IF $DATA(^YTT(601.87,"AC",GRP,SEQ))
               Begin DoDot:1
 +2                SET SCALE=$ORDER(^YTT(601.87,"AC",GRP,SEQ,0))
               End DoDot:1
               QUIT 
 +3       ; if something already at ID, increment ID until empty node is found
 +4        IF $DATA(^YTT(601.87,ID))
               FOR 
                   SET ID=ID+1
                   if '$DATA(^YTT(601.87,ID))
                       QUIT 
 +5       ; use FM to add the new scale (PCL-5 Cluster x)
 +6        NEW FDA,FDAIEN,DIERR
 +7        SET FDAIEN(1)=ID
 +8        SET FDA(601.87,"+1,",.01)=ID
 +9        SET FDA(601.87,"+1,",1)=GRP
 +10       SET FDA(601.87,"+1,",2)=SEQ
 +11       SET FDA(601.87,"+1,",3)=NM
 +12       SET FDA(601.87,"+1,",4)=NM
 +13       DO UPDATE^DIE("","FDA","FDAIEN")
 +14       IF $DATA(DIERR)
               DO MES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +15       SET SCALE=$SELECT($DATA(DIERR):0,1:FDAIEN(1))
 +16       DO CLEAN^DILF
 +17       QUIT 
ADDKEYS(SCALE,FIRST,LAST) ; Add a set of scoring keys for PCL-5
 +1       ; from: ADDSLCS expects: PCL5,KEYID
 +2        NEW VALUES,VALUE,QNUM,QIEN,CIEN,X0,DESIG
 +3        SET VALUES(0)="Not at all"
 +4        SET VALUES(1)="A little bit"
 +5        SET VALUES(2)="Moderately"
 +6        SET VALUES(3)="Quite a bit"
 +7        SET VALUES(4)="Extremely"
 +8        FOR QNUM=FIRST:1:LAST
               Begin DoDot:1
 +9       ; using designator, figure out the IEN for the question
 +10      ; QIEN=question IEN, CIEN=content IEN
                   SET QIEN=0
 +11               SET CIEN=0
                   FOR 
                       SET CIEN=$ORDER(^YTT(601.76,"AC",PCL5,CIEN))
                       if 'CIEN
                           QUIT 
                       Begin DoDot:2
 +12                       SET X0=^YTT(601.76,CIEN,0)
                           SET DESIG=$PIECE(X0,U,5)
 +13                       IF DESIG=(QNUM_".")
                               SET QIEN=$PIECE(X0,U,4)
                       End DoDot:2
                       if QIEN
                           QUIT 
 +14      ; for the question (QIEN), add the 5 scoring keys for this scale
 +15               FOR VALUE=0:1:4
                       SET KEYID=KEYID+1
                       DO ADDKEY(KEYID,SCALE,QIEN,VALUES(VALUE),VALUE)
               End DoDot:1
 +16       QUIT 
ADDKEY(ID,SCALE,QUESTION,TARGET,VALUE) ; add a new scoring key
 +1       ; quit if key already there
 +2        NEW EXISTS,I
 +3        SET EXISTS=0
 +4        SET I=0
           FOR 
               SET I=$ORDER(^YTT(601.91,"AC",SCALE,I))
               if 'I
                   QUIT 
               Begin DoDot:1
 +5                IF ($PIECE(^YTT(601.91,I,0),U,3))=QUESTION
                       IF ($PIECE(^(0),U,4)=TARGET)
                           SET EXISTS=1
               End DoDot:1
               if EXISTS
                   QUIT 
 +6        if EXISTS
               QUIT 
 +7       ; if something already at ID, increment ID until empty node is found
 +8        IF $DATA(^YTT(601.91,ID))
               FOR 
                   SET ID=ID+1
                   if '$DATA(^YTT(601.91,ID))
                       QUIT 
 +9       ; use FM to add new key
 +10       NEW FDA,FDAIEN,DIERR
 +11       SET FDAIEN(1)=ID
 +12       SET FDA(601.91,"+1,",.01)=ID
 +13       SET FDA(601.91,"+1,",1)=SCALE
 +14       SET FDA(601.91,"+1,",2)=QUESTION
 +15       SET FDA(601.91,"+1,",3)=TARGET
 +16       SET FDA(601.91,"+1,",4)=VALUE
 +17       DO UPDATE^DIE("","FDA","FDAIEN")
 +18       IF $DATA(DIERR)
               DO MES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +19       DO CLEAN^DILF
 +20       QUIT 
UPDPCLR   ; update the PCL-5 report to include cluster information
 +1        NEW PCL5,RPT,WP,I,X,DIERR
 +2       ; PCL-5 ien
           SET PCL5=$ORDER(^YTT(601.71,"B","PCL-5",0))
 +3       ; Report ien
           SET RPT=$ORDER(^YTT(601.93,"C",PCL5,0))
           if 'RPT
               QUIT 
 +4        FOR I=1:1
               SET X=$PIECE($TEXT(RPTFMT+I),";;",2,99)
               if X="zzzzz"
                   QUIT 
               SET WP(I)=X
 +5        DO WP^DIE(601.93,RPT_",",2,"","WP")
 +6        IF $DATA(DIERR)
               DO MES^XPDUTL("ERROR: "_$GET(^TMP("DIERR",$JOB,1,"TEXT",1)))
 +7        DO CLEAN^DILF
 +8        QUIT 
DLLTEST   ; tests scored by DLL
 +1       ;;BAM-C
 +2       ;;BAM-R
 +3       ;;BASIS-24
 +4       ;;BHS
 +5       ;;BSI
 +6       ;;BSL-23
 +7       ;;CAM
 +8       ;;CDR
 +9       ;;DBAS
 +10      ;;DERS
 +11      ;;FAD
 +12      ;;FAST
 +13      ;;ISMI
 +14      ;;MDQ
 +15      ;;MINICOG
 +16      ;;MMPI-2-RF
 +17      ;;NEO-PI-3
 +18      ;;POQ
 +19      ;;QOLI
 +20      ;;QOLIE-31
 +21      ;;SBR II
 +22      ;;SOCRATES 8A
 +23      ;;SOCRATES 8D
 +24      ;;SST-VOF
 +25      ;;SST-VOI
 +26      ;;STMS
 +27      ;;VR-12
 +28      ;;WHODAS 2
 +29      ;;WHOQOL-BREF
 +30      ;;WHYMPI
 +31      ;;zzzzz
 +32      ;
Q10       ;;Blaming yourself or someone else for the stressful experience or what happened after it?
Q14       ;;Trouble experiencing positive feelings (for example, being unable to feel happiness or have loving feelings for people close to you)?
Q15       ;;Irritable behavior, angry outbursts, or acting aggressively?
Q16       ;;Taking too many risks or doing things that could cause you harm?
 +1       ;
RPTFMT    ; PCL-5 report text
 +1       ;;.| PCL-5| | Date Given: <.Date_Given.>| Clinician: <.Staff_Ordered_By.>| Location: <.Location.>| | Veteran: <.Patient_Name_Last_First.>| SSN: <.Patient_SSN.>| DOB: <.Patient_Date_Of_Birth.>
 +2       ;;(<.Patient_Age.>)| Gender: <.Patient_Gender.>| | |             PCL-5 Score:  <-PCL-5->| | Cluster B (items  1-5) :  <-Cluster B->| Cluster C (items  6-7) :  <-Cluster C->| Cluster D (items  8-14):
 +3       ;;  <-Cluster D->| Cluster E (items 15-20):  <-Cluster E->| |
 +4       ;;| Interpretive Statement:| PCL-5 has a total score range of 0-80, with higher scores indicating greater PTSD symptom severity.| |
 +5       ;;  0-10:  no or minimal symptoms reported| 11-20:  mild symptoms reported| 21-40:  moderate symptoms reported| 41-60:  severe symptoms reported| 61-80:  very severe symptoms reported|
 +6       ;; | | Questions and Answers: | | The event you experienced was: <*Answer_6839*>| | The event happened: <*Answer_6840*>| |  1. 
 +7       ;;Repeated, disturbing, and unwanted memories of the stressful experience?|     <*Answer_6841*>|  2. Repeated, disturbing dreams of the stressful experience?|     <*Answer_6842*>|  3. Suddenly feeling or
 +8       ;; acting as if the stressful experience were actually happening again (as if you were actually back there reliving it)?|     <*Answer_6843*>|  4. Feeling very upset when something reminded you of the
 +9       ;; stressful experience?|     <*Answer_6844*>|  5. Having strong physical reactions when something reminded you of the stressful experience (for example, heart pounding, trouble breathing, sweating)?|
 +10      ;;     <*Answer_6845*>|  6. Avoiding memories, thoughts, or feelings related to the stressful experience?|     <*Answer_6846*>|  7. Avoiding external reminders of the stressful experience (for example,
 +11      ;; people, places, conversations, activities, objects, or situations)?|     <*Answer_6847*>|  8. Trouble remembering important parts of the stressful experience?|     <*Answer_6848*>|  9. Having strong
 +12      ;; negative beliefs about yourself, other people, or the world (for example, having thoughts such as: I am bad, there is something seriously wrong with me, no one can be trusted, the world is
 +13      ;; completely dangerous)?|     <*Answer_6849*>| 10. Blaming yourself or someone else for the stressful experience or what happened after it?|     <*Answer_6850*>| 11. Having strong negative
 +14      ;; feelings such as fear, horror, anger, guilt, or shame?|     <*Answer_6851*>| 12. Loss of interest in activities that you used to enjoy?|     <*Answer_6852*>| 13. Feeling distant or cut off from other
 +15      ;; people?|     <*Answer_6853*>| 14. Trouble experiencing positive feelings (for example, being unable to feel happiness or have loving feelings for people close to you)?|     
 +16      ;;<*Answer_6854*>| 15. Irritable behavior, angry outbursts, or acting aggressively?|     <*Answer_6855*>| 16. Taking too many risks or doing things that could cause you harm?|     <*Answer_6856*>| 17. Being
 +17      ;; "superalert" or watchful or on guard?|     <*Answer_6857*>| 18. Feeling jumpy or easily startled?|     <*Answer_6858*>| 19. Having difficulty concentrating?|     <*Answer_6859*>| 20. Trouble falling
 +18      ;; or staying asleep?|     <*Answer_6860*>
 +19      ;;| | 0=not at all  1=a little bit  2=moderately  3=quite a bit  4=extremely
 +20      ;;| | Information contained in this note is based on a self-report assessment and is not sufficient to use alone for diagnostic purposes.  Assessment results
 +21      ;; should be verified for accuracy and used in conjunction with other diagnostic activities and procedures.|  $~
 +22      ;;zzzzz