Ignore:
Timestamp:
Dec 4, 2009, 12:11:15 AM (14 years ago)
Author:
George Lilly
Message:

revised back to 6/30/08 version

File:
1 edited

Legend:

Unmodified
Added
Removed
  • WorldVistAEHR/trunk/r/PROSTHETICS-RMPR-RMPO-RMPS/RMPREOS.m

    r613 r623  
    1 RMPREOS ;HINES-CIOFO/HNC -Suspense Processing ; 2/25/04 10:26am
    2         ;;3.0;PROSTHETICS;**45,50,52,55,57,62,80,85,97,135**;Feb 09, 1996;Build 12
    3         ;
    4         ;  HNC - patch 52 - 9/22/00 Modify EN2 not to check for RMPRFLAG
    5         ;                           RMPRCLOS, or FLAG.
    6         ;
    7         ;  HNC - patch 55 - 3/12/01 allow other note without initial
    8         ;
    9         ;  HNC - patch 57 - 5/8/01  close out note message
    10         ;
    11         ;  RVD - patch 62 - 8/13/01 link suspense to 2319 records.
    12         ;
    13         ;  HNC - patch 80 - 8/28/03 Type to allow Editing, CLOSE SUSPENSE NOT
    14         ;                           CLOSED Screen Service for Consult Tracking
    15         ;                           (per Jerry)
    16         ;
    17         ;  TH  - patch 85 - 2/20/04 Fix bug-overwrite Initial Action Date,
    18         ;                           Note, and DUZ problem.
    19         ;
    20         ;  KAM - patch 85 - 3/16/04 Allow forwarding of a consult to a "Tracker
    21         ;                           Only" service
    22         ;  KAM - patch 97 - 8/19/04 Stop canceling the original consult when
    23         ;                           canceling the clone (in file 123)
    24        
    25         ;Patch 80 -Read File 123.5 DBIA 3861
    26         ;
    27 EN      ;Add Manual Suspense
    28         ;
    29         D NOW^%DTC S X=%
    30         S DIC="^RMPR(668,",DIC(0)="AEQLM",DLAYGO=668
    31         S DIC("DR")="1////^S X=RMPRDFN;22R;14////^S X=""O"";8////^S X=DUZ;9////^S X=5;3////^S X=9;2////^S X=RMPR(""STA"")"
    32         K DINUM,D0,DD,DO D FILE^DICN K DLAYGO G:Y'>0 EX S (RDA,DA)=+Y
    33         S DIE="^RMPR(668,",DR="13;4"
    34         L +^RMPR(668,RDA,0):1 I $T=0 W $C(7),?5,!,"Someone else is editing this record" G EX
    35         D ^DIE L -^RMPR(668,RDA,0)
    36         I '$P(^RMPR(668,RDA,0),U,3) S DA=RDA,DIK="^RMPR(668," D ^DIK W !,$C(7),?5,"Deleted..."
    37 EX      K X,DIC,DIE,DR,Y
    38         Q
    39         ;
    40 EN2     ;edit MANUAL suspense record
    41         ;DA must be defined
    42         ;
    43         I $P(^RMPR(668,DA,0),U,8)'>4 W !!!,"Can Not Edit This Suspense Record!",!! H 2 Q
    44 PROC    L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
    45         S RO=$G(^RMPR(668,DA,0)),Y=$P(^(0),U,1) X ^DD("DD")
    46         W "   ",Y,"  ",$E($P(^DPT($P(RO,U,2),0),U,1),1,20)
    47         ;
    48         S RZ="S RX=$P(RO,U,3),RR=$S(RX=1:""PSC"",RX=2:""2421"",RX=3:""2237"",RX=4:""2529-3"",RX=5:""2529-7"",RX=6:""2474"",RX=7:""2431"",RX=8:""2914"",RX=9:""OTHER"",RX=10:""2520"",RX=11:""STOCK ISSUE"",1:""NONE"")"
    49         X RZ
    50         W "  ",RR,"  ",$S($P(RO,U,5)?7N.N:"CLOSED",1:"OPEN")
    51         S DIE="^RMPR(668,"
    52         ;Q:$D(RMPRFLAG)!$D(RMPRCLOS)!$D(FLAG)
    53         S DR="2R;22R;3;13;4"
    54         D ^DIE
    55         L -^RMPR(668,DA)
    56         Q
    57 ENIA    ;initial action note
    58         ;
    59         I $D(^RMPR(668,DA,3)) W !!!,"Initial Action Note Already Posted!",!! H 2 Q
    60         L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
    61         D NOW^%DTC S RMPREODT=%
    62         ;link suspense to 2319 record, patch #62
    63         I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
    64         S DIE="^RMPR(668,"
    65         S DR="7"
    66         D ^DIE
    67         I $D(^RMPR(668,DA,3)) S DR="10////^S X=RMPREODT;16////^S X=DUZ;14///^S X=""P""" D ^DIE
    68         L -^RMPR(668,DA)
    69         ;check for a note here
    70         I '$D(^RMPR(668,DA,3)) Q
    71         ;consult ien
    72         S GMRCO=$P(^RMPR(668,DA,0),U,15) Q:GMRCO=""
    73         ;note in array
    74         S RMPRCMT=0,GMRCMT=1
    75         F  S RMPRCMT=$O(^RMPR(668,DA,3,RMPRCMT)) Q:RMPRCMT=""  D
    76         .S GMRCMT(RMPRCMT)=^RMPR(668,DA,3,RMPRCMT,0)
    77         I $G(GMRCMT(1))="" S GMRCMT(1)="nothing noted"
    78         ;call api
    79         D CMT^GMRCGUIB(GMRCO,.GMRCMT,DUZ,RMPREODT,DUZ)
    80         K RMPREODT,GMRCO,RMGMRCO,GMRCMT,RMPRCMT
    81         Q
    82 FORW    ;forward consult
    83         I $P(^RMPR(668,DA,0),U,8)>4 W !!!,"Can Not Forward.",!! H 2 Q
    84         I $D(^RMPR(668,DA,4,1,0)) W !!!,"Completion Note Already Posted!",!! H 2 Q
    85         D NOW^%DTC S RMPREODT=%,GMRCAD=%
    86         ;lookup service to forward consult
    87         ;S DIC("S")="I '$P(^(0),U,2),'+$G(^GMR(123.5,+Y,""IFC""))" ;*85
    88         S DIC("S")="I $$SCR^RMPREOS(+Y,DUZ)"                       ;*85
    89         S DIC="^GMR(123.5,",DIC(0)="AEQ"
    90         S DIC("A")="Select Service To Forward Consult: "
    91         D ^DIC
    92         I (+Y'>0)!($D(DTOUT))!$D(DUOUT) W !!,"Not Forwarded! No Service Selected ." H 2 K DIC Q
    93         S GMRCSS=+Y
    94         L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!"
    95         S DIE="^RMPR(668,"
    96         ;stuff Consult forward service
    97         S DR="23////^S X=GMRCSS"
    98         D ^DIE
    99         Q:'$P($G(^RMPR(668,DA,8)),U,6)
    100         S DR="12"
    101         D ^DIE
    102         I $D(^RMPR(668,DA,4,1,0)) S DR="5////^S X=RMPREODT;6////^S X=DUZ;14///^S X=""C""" D ^DIE
    103         ;must have a note
    104         I '$D(^RMPR(668,DA,4,1,0)) W !!,"Must Have Note to Forward. Consult Not Forwarded." S $P(^RMPR(668,DA,8),U,6)="" H 2 Q
    105         ;
    106         ; set initial action note if null
    107         ;I '$P(^RMPR(668,DA,0),U,10) D
    108         ;
    109         ; Check if Initial Action Date is null
    110         I $P(^RMPR(668,DA,0),U,9)="" D
    111         .S DIE="^RMPR(668,"
    112         .; Set Initial Action Note
    113         .S DR="7///^S X=""See Completion Note, this was forwarded to another service."""
    114         .D ^DIE
    115         .; Set Initial Action Date and Initial Action By
    116         .;S DR="10////^S X=RMPREODT;16////^S X=DUZ;24////^S X=DUZ" D ^DIE
    117         .S DR="10////^S X=RMPREODT;16////^S X=DUZ" D ^DIE
    118         ;
    119         ; Set Forwarded By
    120         S DR="24////^S X=DUZ" D ^DIE
    121         ;
    122         L -^RMPR(668,DA)
    123         K RMPREODT
    124         S GMRCO=$P(^RMPR(668,DA,0),U,15)
    125         Q:GMRCO=""
    126         ;note in array
    127         S RMPRCOM=0
    128         F  S RMPRCOM=$O(^RMPR(668,DA,4,RMPRCOM)) Q:RMPRCOM=""  D
    129         .S GMRCOM(RMPRCOM)=^RMPR(668,DA,4,RMPRCOM,0)
    130         I $G(GMRCOM)="" S GMRCOM="not noted"
    131         S GMRCORNP=DUZ
    132         S GMRCURGI=""
    133         S GMRCATTN=""
    134         S BDC=$$FR^GMRCGUIA(.GMRCO,.GMRCSS,.GMRCORNP,.GMRCATTN,.GMRCURGI,.GMRCOM,.GMRCAD)
    135         I +BDC=1 W !!,"ERROR, DID NOT FORWARD!" H 2
    136         W !!,"Consult Forwarded." H 2
    137         K GMRCO,GMRCSS,GMRCORNP,GMRCATTN,GMRCURGI,GMRCOM,GMRCAD
    138         Q
    139 CLNT    ;post closed note
    140         ;
    141         I $P(^RMPR(668,DA,0),U,10)="C" W !!!,"Completion Note Already Posted!",!! H 2 Q
    142         L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
    143         D NOW^%DTC S RMPREODT=%,GMRCAD=%
    144         ;link suspense to 2319 record, patch #62
    145         I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
    146         S DIE="^RMPR(668,"
    147         S DR="12"
    148         D ^DIE
    149         I '$D(^RMPR(668,DA,4)) Q
    150         I $D(^RMPR(668,DA,4)) S DR="5////^S X=RMPREODT;6////^S X=DUZ;14///^S X=""C""" D ^DIE
    151         ;set initial action note if null
    152         I '$P(^RMPR(668,DA,0),U,9) D
    153         .S DIE="^RMPR(668,"
    154         .S DR="7///^S X=""See Completion Note for Initial Action Taken."""
    155         .D ^DIE
    156         .S DR="10////^S X=RMPREODT;16////^S X=DUZ" D ^DIE
    157         ;added by #62.  Once closed, update all 2319 record for initial and
    158         ;completion date
    159         D ICDT^RMPRPCEL(DA)
    160         ;
    161         L -^RMPR(668,DA)
    162         K RMPREODT
    163         S GMRCO=$P(^RMPR(668,DA,0),U,15)
    164         Q:GMRCO=""
    165         ;note in array
    166         S RMPRCOM=0
    167         F  S RMPRCOM=$O(^RMPR(668,DA,4,RMPRCOM)) Q:RMPRCOM=""  D
    168         .S GMRCOM(RMPRCOM)=^RMPR(668,DA,4,RMPRCOM,0)
    169         I $G(GMRCOM)="" S GMRCOM="not noted"
    170         S GMRCSF="U"
    171         S GMRCA=10
    172         S GMRCALF="N"
    173         S GMRCATO=""
    174         S (GMRCORNP,GMRCDUZ)=DUZ
    175         S BDC=$$SFILE^GMRCGUIB(.GMRCO,.GMRCA,.GMRCSF,.GMRCORNP,.GMRCDUZ,.GMRCOM,.GMRCALF,.GMRCATO,.GMRCAD)
    176         I +BDC=1 W !!,$P(BDC,U,2) H 2
    177         K GMRCO,GMRCA,GMRCSF,GMRCORNP,GMRCDUZ,GMRCOM,GMRCALF,GMRCATO,GMRCAD
    178         Q
    179 OACT    ;other notes - no initial needed 3/12/01
    180         ;stuff date/time in.01
    181         ;delete if no note
    182         ;I '$D(^RMPR(668,DA,3,1,0)) W !!!,"No Initial Action Taken... ",!! H 2 Q
    183         ;
    184         L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
    185         ;link suspense to 2319 record, patch #62
    186         I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
    187         S DA(1)=DA,RMPRDA1=DA
    188         S DIC="^RMPR(668,"_DA(1)_",1,"
    189         S DIC(0)="CQL"
    190         S DIC("P")=$P(^DD(668,11,0),U,2)
    191         D NOW^%DTC S X=%,GMRCWHN=%
    192         S DLAYGO=688
    193         D ^DIC
    194         I Y=-1 K DIC,DA Q
    195         S DIE=DIC K DIC
    196         S (DA,RMPRDA2)=+Y
    197         S DR="1" D ^DIE
    198         K DIE,DR,Y
    199         I '$D(^RMPR(668,RMPRDA1,1,RMPRDA2,1,0)) D  Q
    200         .;delete the record if no note
    201         .S DIK="^RMPR(668,RMPRDA1,1,"
    202         .S DA=RMPRDA2
    203         .D ^DIK
    204         .K DA,DIA,RMPRDA1,RMPRDA2,GMRCWHN
    205         ;send data to consults if note
    206         S GMRCO=$P(^RMPR(668,RMPRDA1,0),U,15)
    207         I GMRCO="" Q
    208         ;GMRCOM is comment array
    209         S RMPRCOM=0
    210         F  S RMPRCOM=$O(^RMPR(668,RMPRDA1,1,RMPRDA2,1,RMPRCOM)) Q:RMPRCOM=""  D
    211         .S GMRCOM(RMPRCOM)=^RMPR(668,RMPRDA1,1,RMPRDA2,1,RMPRCOM,0)
    212         ;
    213         L -^RMPR(668,RMPRDA1)
    214         ;GMRCWHN was set to date/time
    215         D CMT^GMRCGUIB(.GMRCO,.GMRCOM,"",.GMRCWHN,DUZ)
    216         ;check ok
    217         K DA,DIK,RMPRDA1,RMPRDA2,RMPRCOM,GMRCOM,GMRCO,GMRCWHN
    218         Q
    219 CANCEL  ;cancel suspense
    220         ;set status to X and cancelled by to duz, date/time.
    221         ;start
    222         ;
    223         I $P(^RMPR(668,DA,0),U,5)'="" W !!!,"This has already been completed, cannot cancel!",!! H 2  Q
    224         L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
    225         K Y
    226         S DIR(0)="Y",DIR("B")="N"
    227         W !!!,"This will CANCEL/DELETE this Suspense Request."
    228         S DIR("A")="Are you sure you want to CANCEL/DELETE this Suspense Request? (Y/N) "
    229         D ^DIR I $D(DTOUT)!$D(DUOUT)!(Y="^")!(Y=0) W !!,"Suspense Not Cancelled!" H 2  Q
    230         D NOW^%DTC S RMPREODT=%
    231         S DIE="^RMPR(668,"
    232         S DR="14///^S X=""X"";17////^S X=DUZ;18////^S X=RMPREODT;9"
    233         D ^DIE
    234         W !!,?5,"DELETED/CANCELLED!" H 2
    235         L -^RMPR(668,DA)
    236         ;consult ien
    237         S GMRCO=$P(^RMPR(668,DA,0),U,15) Q:GMRCO=""
    238         ;note in array
    239         S RMPRCMT=0
    240         F  S RMPRCMT=$O(^RMPR(668,DA,9,RMPRCMT)) Q:RMPRCMT=""  D
    241         .S GMRCMT(RMPRCMT)=^RMPR(668,DA,9,RMPRCMT,0)
    242         I $G(GMRCMT)="" S GMRCMT="nothing noted"
    243         ;call api
    244         ;DY for cancelled, deny
    245         S GMRCACTM="DY"
    246         ; PATCH RMPR*3*97 if canceling a clone do not update file 123 7=clone
    247         I $P(^RMPR(668,DA,0),U,8)'=7 D
    248         . S RMGMRCO=$$DC^GMRCGUIA(.GMRCO,DUZ,RMPREODT,.GMRCACTM,.GMRCMT)
    249         K RMPREODT,GMRCMT,RMPRCMT,GMRCACTM
    250         Q
    251         ;
    252 LINK60  ;link suspense to 2319 records
    253         S RMSERR=0
    254         F RMSI=0:0 S RMSI=$O(^TMP($J,"RMPRPCE",660,RMSI)) Q:RMSI'>0  D
    255         .S RMSAMIS=$G(^TMP($J,"RMPRPCE",660,RMSI))
    256         .;call update 668
    257         .S RMSERR=$$UP68^RMPRPCE1(RMSI,DA,+RMSAMIS)
    258         Q:RMSERR=1
    259         S ^TMP($J,"RMPRPCE",668,DA)=""
    260         Q
    261         ;end
    262 SCR(SERV,USR)   ; SCREEN SERVICES THAT CAN BE FORWARDED TO ,RMPR*3*85
    263         N USAGE
    264         S USAGE=$P(^GMR(123.5,SERV,0),U,2)
    265         I USAGE=9!(USAGE=1) Q 0  ;disabled or grouper service
    266         I USAGE=2 Q $$VALIDU^GMRCAU(SERV,USR)  ;tracking and check update user
    267         Q 1  ;service usage must be null = O
     1RMPREOS ;HINES-CIOFO/HNC -Suspense Processing ; 2/25/04 10:26am
     2 ;;3.0;PROSTHETICS;**45,50,52,55,57,62,80,85,97**;Feb 09, 1996
     3 ;
     4 ;  HNC - patch 52 - 9/22/00 Modify EN2 not to check for RMPRFLAG
     5 ;                           RMPRCLOS, or FLAG.
     6 ;
     7 ;  HNC - patch 55 - 3/12/01 allow other note without initial
     8 ;
     9 ;  HNC - patch 57 - 5/8/01  close out note message
     10 ;
     11 ;  RVD - patch 62 - 8/13/01 link suspense to 2319 records.
     12 ;
     13 ;  HNC - patch 80 - 8/28/03 Type to allow Editing, CLOSE SUSPENSE NOT
     14 ;                           CLOSED Screen Service for Consult Tracking
     15 ;                           (per Jerry)
     16 ;
     17 ;  TH  - patch 85 - 2/20/04 Fix bug-overwrite Initial Action Date,
     18 ;                           Note, and DUZ problem.
     19 ;
     20 ;  KAM - patch 85 - 3/16/04 Allow forwarding of a consult to a "Tracker
     21 ;                           Only" service
     22 ;  KAM - patch 97 - 8/19/04 Stop canceling the original consult when
     23 ;                           canceling the clone (in file 123)
     24 
     25 ;Patch 80 -Read File 123.5 DBIA 3861
     26 ;
     27EN ;Add Manual Suspense
     28 ;
     29 D NOW^%DTC S X=%
     30 S DIC="^RMPR(668,",DIC(0)="AEQLM",DLAYGO=668
     31 S DIC("DR")="1////^S X=RMPRDFN;22R;14////^S X=""O"";8////^S X=DUZ;9////^S X=5;3////^S X=9;2////^S X=RMPR(""STA"")"
     32 K DINUM,D0,DD,DO D FILE^DICN K DLAYGO G:Y'>0 EX S (RDA,DA)=+Y
     33 S DIE="^RMPR(668,",DR="13;4"
     34 L +^RMPR(668,RDA,0):1 I $T=0 W $C(7),?5,!,"Someone else is editing this record" G EX
     35 D ^DIE L -^RMPR(668,RDA,0)
     36 I '$P(^RMPR(668,RDA,0),U,3) S DA=RDA,DIK="^RMPR(668," D ^DIK W !,$C(7),?5,"Deleted..."
     37EX K X,DIC,DIE,DR,Y
     38 Q
     39 ;
     40EN2 ;edit MANUAL suspense record
     41 ;DA must be defined
     42 ;
     43 I $P(^RMPR(668,DA,0),U,8)'>4 W !!!,"Can Not Edit This Suspense Record!",!! H 2 Q
     44PROC L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
     45 S RO=$G(^RMPR(668,DA,0)),Y=$P(^(0),U,1) X ^DD("DD")
     46 W "   ",Y,"  ",$E($P(^DPT($P(RO,U,2),0),U,1),1,20)
     47 ;
     48 S RZ="S RX=$P(RO,U,3),RR=$S(RX=1:""PSC"",RX=2:""2421"",RX=3:""2237"",RX=4:""2529-3"",RX=5:""2529-7"",RX=6:""2474"",RX=7:""2431"",RX=8:""2914"",RX=9:""OTHER"",RX=10:""2520"",RX=11:""STOCK ISSUE"",1:""NONE"")"
     49 X RZ
     50 W "  ",RR,"  ",$S($P(RO,U,5)?7N.N:"CLOSED",1:"OPEN")
     51 S DIE="^RMPR(668,"
     52 ;Q:$D(RMPRFLAG)!$D(RMPRCLOS)!$D(FLAG)
     53 S DR="2R;22R;3;13;4"
     54 D ^DIE
     55 L -^RMPR(668,DA)
     56 Q
     57ENIA ;initial action note
     58 ;
     59 I $D(^RMPR(668,DA,3)) W !!!,"Initial Action Note Already Posted!",!! H 2 Q
     60 L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
     61 D NOW^%DTC S RMPREODT=%
     62 ;link suspense to 2319 record, patch #62
     63 I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
     64 S DIE="^RMPR(668,"
     65 S DR="7"
     66 D ^DIE
     67 I $D(^RMPR(668,DA,3)) S DR="10////^S X=RMPREODT;16////^S X=DUZ;14///^S X=""P""" D ^DIE
     68 L -^RMPR(668,DA)
     69 ;check for a note here
     70 I '$D(^RMPR(668,DA,3)) Q
     71 ;consult ien
     72 S GMRCO=$P(^RMPR(668,DA,0),U,15) Q:GMRCO=""
     73 ;note in array
     74 S RMPRCMT=0
     75 F  S RMPRCMT=$O(^RMPR(668,DA,3,RMPRCMT)) Q:RMPRCMT=""  D
     76 .S GMRCMT(RMPRCMT)=^RMPR(668,DA,3,RMPRCMT,0)
     77 I $G(GMRCMT)="" S GMRCMT="nothing noted"
     78 ;call api
     79 S RMGMRCO=$$RC^GMRCGUIA(.GMRCO,DUZ,RMPREODT,.GMRCMT,DUZ)
     80 K RMPREODT,GMRCO,RMGMRCO,GMRCMT,RMPRCMT
     81 Q
     82FORW ;forward consult
     83 I $P(^RMPR(668,DA,0),U,8)>4 W !!!,"Can Not Forward.",!! H 2 Q
     84 I $D(^RMPR(668,DA,4,1,0)) W !!!,"Completion Note Already Posted!",!! H 2 Q
     85 D NOW^%DTC S RMPREODT=%,GMRCAD=%
     86 ;lookup service to forward consult
     87 ;S DIC("S")="I '$P(^(0),U,2),'+$G(^GMR(123.5,+Y,""IFC""))" ;*85
     88 S DIC("S")="I $$SCR^RMPREOS(+Y,DUZ)"                       ;*85
     89 S DIC="^GMR(123.5,",DIC(0)="AEQ"
     90 S DIC("A")="Select Service To Forward Consult: "
     91 D ^DIC
     92 I (+Y'>0)!($D(DTOUT))!$D(DUOUT) W !!,"Not Forwarded! No Service Selected ." H 2 K DIC Q
     93 S GMRCSS=+Y
     94 L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!"
     95 S DIE="^RMPR(668,"
     96 ;stuff Consult forward service
     97 S DR="23////^S X=GMRCSS"
     98 D ^DIE
     99 Q:'$P($G(^RMPR(668,DA,8)),U,6)
     100 S DR="12"
     101 D ^DIE
     102 I $D(^RMPR(668,DA,4,1,0)) S DR="5////^S X=RMPREODT;6////^S X=DUZ;14///^S X=""C""" D ^DIE
     103 ;must have a note
     104 I '$D(^RMPR(668,DA,4,1,0)) W !!,"Must Have Note to Forward. Consult Not Forwarded." S $P(^RMPR(668,DA,8),U,6)="" H 2 Q
     105 ;
     106 ; set initial action note if null
     107 ;I '$P(^RMPR(668,DA,0),U,10) D
     108 ;
     109 ; Check if Initial Action Date is null
     110 I $P(^RMPR(668,DA,0),U,9)="" D
     111 .S DIE="^RMPR(668,"
     112 .; Set Initial Action Note
     113 .S DR="7///^S X=""See Completion Note, this was forwarded to another service."""
     114 .D ^DIE
     115 .; Set Initial Action Date and Initial Action By
     116 .;S DR="10////^S X=RMPREODT;16////^S X=DUZ;24////^S X=DUZ" D ^DIE
     117 .S DR="10////^S X=RMPREODT;16////^S X=DUZ" D ^DIE
     118 ;
     119 ; Set Forwarded By
     120 S DR="24////^S X=DUZ" D ^DIE
     121 ;
     122 L -^RMPR(668,DA)
     123 K RMPREODT
     124 S GMRCO=$P(^RMPR(668,DA,0),U,15)
     125 Q:GMRCO=""
     126 ;note in array
     127 S RMPRCOM=0
     128 F  S RMPRCOM=$O(^RMPR(668,DA,4,RMPRCOM)) Q:RMPRCOM=""  D
     129 .S GMRCOM(RMPRCOM)=^RMPR(668,DA,4,RMPRCOM,0)
     130 I $G(GMRCOM)="" S GMRCOM="not noted"
     131 S GMRCORNP=DUZ
     132 S GMRCURGI=""
     133 S GMRCATTN=""
     134 S BDC=$$FR^GMRCGUIA(.GMRCO,.GMRCSS,.GMRCORNP,.GMRCATTN,.GMRCURGI,.GMRCOM,.GMRCAD)
     135 I +BDC=1 W !!,"ERROR, DID NOT FORWARD!" H 2
     136 W !!,"Consult Forwarded." H 2
     137 K GMRCO,GMRCSS,GMRCORNP,GMRCATTN,GMRCURGI,GMRCOM,GMRCAD
     138 Q
     139CLNT ;post closed note
     140 ;
     141 I $P(^RMPR(668,DA,0),U,10)="C" W !!!,"Completion Note Already Posted!",!! H 2 Q
     142 L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
     143 D NOW^%DTC S RMPREODT=%,GMRCAD=%
     144 ;link suspense to 2319 record, patch #62
     145 I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
     146 S DIE="^RMPR(668,"
     147 S DR="12"
     148 D ^DIE
     149 I '$D(^RMPR(668,DA,4)) Q
     150 I $D(^RMPR(668,DA,4)) S DR="5////^S X=RMPREODT;6////^S X=DUZ;14///^S X=""C""" D ^DIE
     151 ;set initial action note if null
     152 I '$P(^RMPR(668,DA,0),U,9) D
     153 .S DIE="^RMPR(668,"
     154 .S DR="7///^S X=""See Completion Note for Initial Action Taken."""
     155 .D ^DIE
     156 .S DR="10////^S X=RMPREODT;16////^S X=DUZ" D ^DIE
     157 ;added by #62.  Once closed, update all 2319 record for initial and
     158 ;completion date
     159 D ICDT^RMPRPCEL(DA)
     160 ;
     161 L -^RMPR(668,DA)
     162 K RMPREODT
     163 S GMRCO=$P(^RMPR(668,DA,0),U,15)
     164 Q:GMRCO=""
     165 ;note in array
     166 S RMPRCOM=0
     167 F  S RMPRCOM=$O(^RMPR(668,DA,4,RMPRCOM)) Q:RMPRCOM=""  D
     168 .S GMRCOM(RMPRCOM)=^RMPR(668,DA,4,RMPRCOM,0)
     169 I $G(GMRCOM)="" S GMRCOM="not noted"
     170 S GMRCSF="U"
     171 S GMRCA=10
     172 S GMRCALF="N"
     173 S GMRCATO=""
     174 S (GMRCORNP,GMRCDUZ)=DUZ
     175 S BDC=$$SFILE^GMRCGUIB(.GMRCO,.GMRCA,.GMRCSF,.GMRCORNP,.GMRCDUZ,.GMRCOM,.GMRCALF,.GMRCATO,.GMRCAD)
     176 I +BDC=1 W !!,$P(BDC,U,2) H 2
     177 K GMRCO,GMRCA,GMRCSF,GMRCORNP,GMRCDUZ,GMRCOM,GMRCALF,GMRCATO,GMRCAD
     178 Q
     179OACT ;other notes - no initial needed 3/12/01
     180 ;stuff date/time in.01
     181 ;delete if no note
     182 ;I '$D(^RMPR(668,DA,3,1,0)) W !!!,"No Initial Action Taken... ",!! H 2 Q
     183 ;
     184 L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
     185 ;link suspense to 2319 record, patch #62
     186 I $D(^TMP($J,"RMPRPCE",660)) S ^TMP($J,"RMPRPCE",668,DA)="" D SEL60^RMPRPCEL
     187 S DA(1)=DA,RMPRDA1=DA
     188 S DIC="^RMPR(668,"_DA(1)_",1,"
     189 S DIC(0)="CQL"
     190 S DIC("P")=$P(^DD(668,11,0),U,2)
     191 D NOW^%DTC S X=%,GMRCWHN=%
     192 S DLAYGO=688
     193 D ^DIC
     194 I Y=-1 K DIC,DA Q
     195 S DIE=DIC K DIC
     196 S (DA,RMPRDA2)=+Y
     197 S DR="1" D ^DIE
     198 K DIE,DR,Y
     199 I '$D(^RMPR(668,RMPRDA1,1,RMPRDA2,1,0)) D  Q
     200 .;delete the record if no note
     201 .S DIK="^RMPR(668,RMPRDA1,1,"
     202 .S DA=RMPRDA2
     203 .D ^DIK
     204 .K DA,DIA,RMPRDA1,RMPRDA2,GMRCWHN
     205 ;send data to consults if note
     206 S GMRCO=$P(^RMPR(668,RMPRDA1,0),U,15)
     207 I GMRCO="" Q
     208 ;GMRCOM is comment array
     209 S RMPRCOM=0
     210 F  S RMPRCOM=$O(^RMPR(668,RMPRDA1,1,RMPRDA2,1,RMPRCOM)) Q:RMPRCOM=""  D
     211 .S GMRCOM(RMPRCOM)=^RMPR(668,RMPRDA1,1,RMPRDA2,1,RMPRCOM,0)
     212 ;
     213 L -^RMPR(668,RMPRDA1)
     214 ;GMRCWHN was set to date/time
     215 D CMT^GMRCGUIB(.GMRCO,.GMRCOM,"",.GMRCWHN,DUZ)
     216 ;check ok
     217 K DA,DIK,RMPRDA1,RMPRDA2,RMPRCOM,GMRCOM,GMRCO,GMRCWHN
     218 Q
     219CANCEL ;cancel suspense
     220 ;set status to X and cancelled by to duz, date/time.
     221 ;start
     222 ;
     223 I $P(^RMPR(668,DA,0),U,5)'="" W !!!,"This has already been completed, cannot cancel!",!! H 2  Q
     224 L +^RMPR(668,DA):1 I $T=0 W !,?5,$C(7),"Someone else is Editing this entry!" Q
     225 K Y
     226 S DIR(0)="Y",DIR("B")="N"
     227 W !!!,"This will CANCEL/DELETE this Suspense Request."
     228 S DIR("A")="Are you sure you want to CANCEL/DELETE this Suspense Request? (Y/N) "
     229 D ^DIR I $D(DTOUT)!$D(DUOUT)!(Y="^")!(Y=0) W !!,"Suspense Not Cancelled!" H 2  Q
     230 D NOW^%DTC S RMPREODT=%
     231 S DIE="^RMPR(668,"
     232 S DR="14///^S X=""X"";17////^S X=DUZ;18////^S X=RMPREODT;9"
     233 D ^DIE
     234 W !!,?5,"DELETED/CANCELLED!" H 2
     235 L -^RMPR(668,DA)
     236 ;consult ien
     237 S GMRCO=$P(^RMPR(668,DA,0),U,15) Q:GMRCO=""
     238 ;note in array
     239 S RMPRCMT=0
     240 F  S RMPRCMT=$O(^RMPR(668,DA,9,RMPRCMT)) Q:RMPRCMT=""  D
     241 .S GMRCMT(RMPRCMT)=^RMPR(668,DA,9,RMPRCMT,0)
     242 I $G(GMRCMT)="" S GMRCMT="nothing noted"
     243 ;call api
     244 ;DY for cancelled, deny
     245 S GMRCACTM="DY"
     246 ; PATCH RMPR*3*97 if canceling a clone do not update file 123 7=clone
     247 I $P(^RMPR(668,DA,0),U,8)'=7 D
     248 . S RMGMRCO=$$DC^GMRCGUIA(.GMRCO,DUZ,RMPREODT,.GMRCACTM,.GMRCMT)
     249 K RMPREODT,GMRCMT,RMPRCMT,GMRCACTM
     250 Q
     251 ;
     252LINK60 ;link suspense to 2319 records
     253 S RMSERR=0
     254 F RMSI=0:0 S RMSI=$O(^TMP($J,"RMPRPCE",660,RMSI)) Q:RMSI'>0  D
     255 .S RMSAMIS=$G(^TMP($J,"RMPRPCE",660,RMSI))
     256 .;call update 668
     257 .S RMSERR=$$UP68^RMPRPCE1(RMSI,DA,+RMSAMIS)
     258 Q:RMSERR=1
     259 S ^TMP($J,"RMPRPCE",668,DA)=""
     260 Q
     261 ;end
     262SCR(SERV,USR) ; SCREEN SERVICES THAT CAN BE FORWARDED TO ,RMPR*3*85
     263 N USAGE
     264 S USAGE=$P(^GMR(123.5,SERV,0),U,2)
     265 I USAGE=9!(USAGE=1) Q 0  ;disabled or grouper service
     266 I USAGE=2 Q $$VALIDU^GMRCAU(SERV,USR)  ;tracking and check update user
     267 Q 1  ;service usage must be null = O
Note: See TracChangeset for help on using the changeset viewer.