Index: ccr/trunk/p/GPLCCR.m
===================================================================
--- ccr/trunk/p/GPLCCR.m	(revision 103)
+++ ccr/trunk/p/GPLCCR.m	(revision 104)
@@ -25,8 +25,15 @@
        I Y<1 Q  ; EXIT
        S DFN=$P(Y,U,1) ; SET THE PATIENT
+       D XPAT(DFN,"","") ; EXPORT TO A FILE
+       Q
+       ;
+XPAT(DFN,DIR,FN) ; EXPORT ONE PATIENT TO A FILE
+       ; DIR IS THE DIRECTORY, DEFAULTS IF NULL TO ^TMP("GPLCCR","ODIR")
+       ; FN IS FILE NAME, DEFAULTS IF NULL
        N CCRGLO
        D CCRRPC(.CCRGLO,DFN,"CCR","","","")
        S OARY=$NA(^TMP("GPLCCR",$J,DFN,"CCR",1))
-       S ONAM="PAT_"_DFN_"_CCR_V1.xml"
+       S ONAM=FN
+       I FN="" S ONAM="PAT_"_DFN_"_CCR_V1.xml"
        S ODIRGLB=$NA(^TMP("GPLCCR","ODIR"))
        I '$D(@ODIRGLB) D  ; IF NOT ODIR HAS BEEN SET
@@ -34,5 +41,6 @@
        . ;S @ODIRGLB="/home/cedwards/"
        . S @ODIRGLB="/opt/wv/p/"
-       S ODIR=@ODIRGLB
+       S ODIR=DIR
+       I DIR="" S ODIR=@ODIRGLB
        D OUTPUT^GPLXPATH(OARY,ONAM,ODIR)
        Q
@@ -81,4 +89,5 @@
     . S IXML="INXML"
     . S OXML=$P(XI,";",4) ; ARRAY FOR SECTION VALUES
+    . ; K @OXML ; KILL EXPECTED OUTPUT ARRAY
     . ; W OXML,!
     . S CALL="D "_TAG_"^"_RTN_"(IXML,DFN,OXML)" ; SETUP THE CALL
Index: ccr/trunk/p/GPLPROBS.m
===================================================================
--- ccr/trunk/p/GPLPROBS.m	(revision 103)
+++ ccr/trunk/p/GPLPROBS.m	(revision 104)
@@ -29,5 +29,8 @@
           ; INSERT^GPLXPATH IS USED TO APPEND THE PROBLEMS TO THE OUTPUT
           ;
-          N RPCRSLT,J,K,PTMP,X,VMAP,TBUF
+          N RPCRSLT,J,K,PTMP,X,VMAP,TBU
+          S TVMAP=$NA(^TMP("GPLCCR",$J,"PROBVALS"))
+          S TARYTMP=$NA(^TMP("GPLCCR",$J,"PROBARYTMP"))
+          K @TVMAP,@TARYTMP ; KILL OLD ARRAY VALUES
           D LIST^ORQQPL3(.RPCRSLT,DFN,"") ; CALL THE PROBLEM LIST RPC
           I '$D(RPCRSLT(1)) D  Q ; RPC RETURNS NULL
@@ -36,7 +39,4 @@
           . ; Q
           I DEBUG ZWR RPCRSLT
-          S TVMAP=$NA(^TMP("GPLCCR",$J,"PROBVALS"))
-          S TARYTMP=$NA(^TMP("GPLCCR",$J,"PROBARYTMP"))
-          K @TVMAP,@TARYTMP ; KILL OLD ARRAY VALUES
           F J=1:1:RPCRSLT(0)  D  ; FOR EACH PROBLEM IN THE LIST
           . S VMAP=$NA(@TVMAP@(J))
Index: ccr/trunk/p/GPLRIMA.m
===================================================================
--- ccr/trunk/p/GPLRIMA.m	(revision 103)
+++ ccr/trunk/p/GPLRIMA.m	(revision 104)
@@ -188,4 +188,31 @@
     . W "ZDX:",ZDX," ZCNT:",ZCOUNT,!
     Q ZCOUNT
+    ;
+XCPAT(CPATCAT) ; EXPORT TO FILE ALL PATIENTS IN CATEGORY CPATCAT
+    ;
+    I '$D(RIMBASE) D ASETUP ; FOR COMMAND LINE CALLS
+    N ZI,ZJ,ZC,ZPATBASE
+    S ZPATBASE=$NA(@RIMBASE@("RIMTBL","PATS",CPATCAT))
+    S ZI=""
+    F ZJ=0:0 D  Q:$O(@ZPATBASE@(ZI))=""  ; TIL END
+    . S ZI=$O(@ZPATBASE@(ZI))
+    . D XPAT^GPLCCR(ZI,"","") ; EXPORT THE PATIENT TO A FILE
+    Q
+    ;
+CPAT(CPATCAT) ; SHOW PATIENT DFNS FOR A CATEGORY CPATCAT
+    ;
+    I '$D(RIMBASE) D ASETUP ; FOR COMMAND LINE CALLS
+    N ZI,ZJ,ZC,ZPATBASE
+    S ZC=0 ; COUNT FOR SPACING THE PRINTOUT
+    S ZPATBASE=$NA(@RIMBASE@("RIMTBL","PATS",CPATCAT))
+    S ZI=""
+    F ZJ=0:0 D  Q:$O(@ZPATBASE@(ZI))=""  ; TIL END
+    . S ZI=$O(@ZPATBASE@(ZI))
+    . S ZC=ZC+1 ; INCREMENT OUTPUT PER LINE COUNT
+    . W ZI," "
+    . I ZC=10 D  ; NEW LINE
+    . . S ZC=0
+    . . W !
+    Q
     ;
 APUSH(AMAP,AVAL) ; ADD AVAL TO ATTRIBUTE MAP AMAP (AMAP PASSED BY NAME)
