| 1 | RMPROWL ;VACO/HNC- CLONE OWL SUSPENSE IN FILE 668 ;5/24/06
 | 
|---|
| 2 |  ;;3.0;PROSTHETICS;**75**;Feb 09, 1996;Build 25
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ; Passed parameter DA - Prosthetics Consult Record from ^RMPR(668
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  ; Passed parameter RMPRW - Work Order Number, external format
 | 
|---|
| 7 |  ;
 | 
|---|
| 8 |  ; Return RESULT(1)=ERROR STRING, OR Message ALL IS OKAY
 | 
|---|
| 9 |  Q
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 | EN2(DA,RMPRW)      ;Create OWL Clone in Suspense
 | 
|---|
| 12 |  G EN3
 | 
|---|
| 13 | EN(RESULT,DA,RMPRW) ;GUI entry point
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 | EN3 ;
 | 
|---|
| 16 |  N RMP9 S RMP9=$P($G(^RMPR(668,DA,0)),U,8)
 | 
|---|
| 17 |  I RMP9="" S RESULT(1)="No Suspense Available to Clone!" G EXIT
 | 
|---|
| 18 |  I (RMP9'=11) S RESULT(1)="Only LAB Can be CLONED" G EXIT
 | 
|---|
| 19 |  S RMPRH=DA
 | 
|---|
| 20 |  S (RMPRFLD,RMPRFI,RMPRFW)=0
 | 
|---|
| 21 |  D GETS^DIQ(668,RMPRH,"**","I","OUT")
 | 
|---|
| 22 |  Q:'$D(OUT)
 | 
|---|
| 23 |  ;create new record
 | 
|---|
| 24 |  D NOW^%DTC S X=%
 | 
|---|
| 25 |  S DIC="^RMPR(668,",DIC(0)="L"
 | 
|---|
| 26 |  K DD,DO D FILE^DICN
 | 
|---|
| 27 |  S RMPRA=+Y
 | 
|---|
| 28 |  M R6681(668,RMPRA_",")=OUT(668,RMPRH_",")
 | 
|---|
| 29 |  F  S RMPRFLD=$O(R6681(668,RMPRA_",",RMPRFLD)) Q:RMPRFLD'>0  D
 | 
|---|
| 30 |  . F  S RMPRFI=$O(R6681(668,RMPRA_",",RMPRFLD,RMPRFI)) Q:RMPRFI=""  D
 | 
|---|
| 31 |  .. I RMPRFI="I" S R668(668,RMPRA_",",RMPRFLD)=R6681(668,RMPRA_",",RMPRFLD,RMPRFI) Q
 | 
|---|
| 32 |  .. S R668(668,RMPRA_",",RMPRFLD,RMPRFI)=R6681(668,RMPRA_",",RMPRFLD,RMPRFI)
 | 
|---|
| 33 |  S RMPRC=RMPRA_","
 | 
|---|
| 34 |  S R668(668,RMPRA_",",4)="R668(668,"_""""_RMPRC_""""_",4)"
 | 
|---|
| 35 |  I $D(R668(668,RMPRA_",",7)) S R668(668,RMPRA_",",7)="R668(668,"_""""_RMPRC_""""_",7)"
 | 
|---|
| 36 |  K OUT
 | 
|---|
| 37 |  ;
 | 
|---|
| 38 |  ;don't set the following fields
 | 
|---|
| 39 |  K R668(668,RMPRA_",",.01)
 | 
|---|
| 40 |  ;urgency
 | 
|---|
| 41 |  K R668(668,RMPRA_",",2.3)
 | 
|---|
| 42 |  ;completion date
 | 
|---|
| 43 |  K R668(668,RMPRA_",",5)
 | 
|---|
| 44 |  ;completed by
 | 
|---|
| 45 |  K R668(668,RMPRA_",",6)
 | 
|---|
| 46 |  ;initial action note
 | 
|---|
| 47 |  K R668(668,RMPRA_",",7)
 | 
|---|
| 48 |  ;suspended by
 | 
|---|
| 49 |  S R668(668,RMPRA_",",8)=DUZ
 | 
|---|
| 50 |  ;patient 2319
 | 
|---|
| 51 |  K R668(668,RMPRA_",",8.1)
 | 
|---|
| 52 |  ;amis grouper
 | 
|---|
| 53 |  K R668(668,RMPRA_",",8.2)
 | 
|---|
| 54 |  ;init action date
 | 
|---|
| 55 |  K R668(668,RMPRA_",",10)
 | 
|---|
| 56 |  ;completion note
 | 
|---|
| 57 |  K R668(668,RMPRA_",",12)
 | 
|---|
| 58 |  ;initial action by
 | 
|---|
| 59 |  K R668(668,RMPRA_",",16)
 | 
|---|
| 60 |  ;cancelled by
 | 
|---|
| 61 |  K R668(668,RMPRA_",",17)
 | 
|---|
| 62 |  ;cancel date
 | 
|---|
| 63 |  K R668(668,RMPRA_",",18)
 | 
|---|
| 64 |  ;CPRS order may be purged, remobe
 | 
|---|
| 65 |  K R668(668,RMPRA_",",19)
 | 
|---|
| 66 |  ;cancel note
 | 
|---|
| 67 |  K R668(668,RMPRA_",",21)
 | 
|---|
| 68 |  ;date rx written, keep same per Karen 9/15/03
 | 
|---|
| 69 |  ;K R668(668,RMPRA_",",22)
 | 
|---|
| 70 |  ;consult service
 | 
|---|
| 71 |  K R668(668,RMPRA_",",23)
 | 
|---|
| 72 |  ;consult needed for display set to orig pointer
 | 
|---|
| 73 |  S R668(668,RMPRA_",",20)=$P(^RMPR(668,RMPRH,0),U,15)
 | 
|---|
| 74 |  ;forwarded by
 | 
|---|
| 75 |  K R668(668,RMPRA_",",24)
 | 
|---|
| 76 |  ;consult visit
 | 
|---|
| 77 |  K R668(668,RMPRA_",",30)
 | 
|---|
| 78 |  ;set status to open
 | 
|---|
| 79 |  S R668(668,RMPRA_",",14)="O"
 | 
|---|
| 80 |  ;set type to clone
 | 
|---|
| 81 |  S R668(668,RMPRA_",",9)=7
 | 
|---|
| 82 |  ;will automatically set the Billing Fields as needed IF NO DUPLICATES!
 | 
|---|
| 83 |  ;32,32.1,32.2,33,33.1,33.2,33.3
 | 
|---|
| 84 |  S DIC="^RMPR(668,",DIC(0)="AEQM"
 | 
|---|
| 85 |  D FILE^DIE("K","R668","ERROR")
 | 
|---|
| 86 |  I $D(ERROR) S RESULT(1)="COULD NOT CLONE DUE TO BAD DATA IN SUSPENSE!" D KILL
 | 
|---|
| 87 | EXIT ;exit
 | 
|---|
| 88 |  K R6681,RMPRA,RMPRC,RMPRFLD,RMPRFI,RMPRFW,RMPRH
 | 
|---|
| 89 |  S RESULT(1)="New Clone Suspense Created."
 | 
|---|
| 90 |  Q
 | 
|---|
| 91 |  K DIC,DIK,ERROR,R668,X,Y
 | 
|---|
| 92 | KILL ;get rid of new clone if error
 | 
|---|
| 93 |  S DA=RMPRA,DIK=668 D ^DIK
 | 
|---|
| 94 |  G EXIT
 | 
|---|
| 95 |  Q
 | 
|---|
| 96 |  ;
 | 
|---|