- BMCMM ; IHS/OIT/FCJ - RCIS - SEND MAILMAN MESSAGE ; [ 09/12/2006 11:50 AM ]
- ;;4.0;REFERRED CARE INFO SYSTEM;**2**;JAN 09, 2006;Build 101
- ;
- ;IHS/ITSC/FCJ SEND MESSAGE TO GROUPS OR
- ; REF PROVIDER AND PROVIDER ONLY
- ; WILL LIST ANY PREVIOUS MESSAGE SENT AND
- ; ALSO STORE HISTORY OF MSG SENT IN RCIS MESSAGE FILE
- ; CALLED AFTER INITIAL ENTRY OF REF AND FROM MODIFY
- ; OPTIONS 14 AND 15
- ; Only BO notes are sent on the group message which is called
- ; during adding a new ref and using modify option 14
- ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ ADDED TST;CALLING FROM API AND EP
- ; Added Case Com to message;Added type of referral and parameter
- ; to identify patient to subject line
- ;
- ;
- ENMM ;EP;MESSAGE for NEW REF AND MODIFICATIONS
- NEW Y,DIC
- Q:'$G(BMCDFN)
- Q:'$G(BMCRDATE)
- MSG ;TEST FOR EXISTING MESSAGES ALREADY SENT
- I $D(^BMCMSG("C",BMCRIEN)) D
- .W !!,"A Message has already been sent for this referral:"
- .S BMCMSG=0 W !?3,"DATE",?25,"SENT BY",?55,"GROUP/PROV"
- .F S BMCMSG=$O(^BMCMSG("C",BMCRIEN,BMCMSG)) Q:BMCMSG'?1N.N D
- ..S Y=$P(^BMCMSG(BMCMSG,0),U) D DD^%DT
- ..W !?3,Y,?25,$P(^VA(200,$P(^BMCMSG(BMCMSG,0),U,4),0),U)
- ..S BMCGRP=0 F S BMCGRP=$O(^BMCMSG(BMCMSG,1,BMCGRP)) Q:BMCGRP'?1N.N D
- ...S BMCGRP1=$P(^BMCMSG(BMCMSG,1,BMCGRP,0),U)
- ...W ?55,$P(^XMB(3.8,BMCGRP1,0),U),!
- ..S BMCPER=0 F S BMCPER=$O(^BMCMSG(BMCMSG,2,BMCPER)) Q:BMCPER'?1N.N D
- ...S BMCPER1=$P(^BMCMSG(BMCMSG,2,BMCPER,0),U)
- ...W ?55,$P(^VA(200,BMCPER1,0),U),!
- E W !!,"A Message has NOT been sent for this referral."
- S DIR(0)="Y",DIR("A")="Do you wish to send a message",DIR("B")="Y"
- D ^DIR K DIR I $D(DIRUT)!'Y G EXT
- I BMCMODE="M",BMCDTYPE=15 D MPER,MSGPRV
- E D MGRP,MSGGRP
- D SND
- G EXT Q
- MGRP ;SELECT MAIL GROUPS TO SEND MESSAGE TO
- ;ENTER THE GROUP TO SEND IT TO AND ADD ENTRY TO THE RCIS MESSAGE FILE
- S BMCGRP="BMC",DIR(0)="S^",Y=0
- F S BMCGRP=$O(^XMB(3.8,"B",BMCGRP)) Q:$E(BMCGRP,1,3)'="BMC" D
- .S BMCGRP1=0 S BMCGRP1=$O(^XMB(3.8,"B",BMCGRP,BMCGRP1))
- .S Y=Y+1,BMCGRP(Y)=BMCGRP_U_BMCGRP1
- I Y=0 W !,"THERE ARE NOT ANY RCIS MAIL GROUPS SET UP.",!,"If you would like to set up a mail group, use Mail Groups Option under the",!,"RCIS Management Menu." Q
- F I=1:1:Y W !?5,I_". "_$P(BMCGRP(I),U)
- S DIR("A")="To select recipient group(s) enter a list or range of numbers"
- S DIR(0)="L^1:"_Y
- D ^DIR I $D(DIRUT) W !?5,"***MESSAGE WAS NOT SENT***" G EXT
- K XMB,XMY
- F I=1:1 Q:$P(Y,",",I)'?1N.N S XMY("G."_$P(BMCGRP($P(Y,",",I)),U))="",BMCGRPS($P(BMCGRP($P(Y,",",I)),U,2))=""
- Q
- MPER ;SETS PRIM PROV AND REF PROV TO AUTO SEND MESSAGE TO
- S BMCPPRV=$P(^AUPNPAT(BMCDFN,0),U,14)
- S BMCRPRV=$P(^BMCREF(BMCRIEN,0),U,6)
- K XMB,XMY
- I 'BMCPPRV,'BMCRPRV W !,"Primary Care Provider and Referring Provider are not definned.",!?5,"***MESSAGE WAS NOT SENT***" G EXT
- F BMCPER=BMCPPRV,BMCRPRV I BMCPER D
- .S XMY(BMCPER)=""
- Q
- MSGGRP ;EP CALL BY BMCAPIA1;GROUP MESSAGE
- S Y=$P(^BMCREF(BMCRIEN,0),U,4)
- S XMZ=""
- ;REF IF OPTION SET AND USER ANSWERS YES....
- S XMB="BMC REFERRAL ALERT" ;LABEL NEW Message
- S XMB(1)=BMCREC("PAT NAME")
- S XMB(1.1)=$S($P($G(^BMCPARM(DUZ(2),4100)),U,7)="Y":XMB(1),1:"")
- S XMB(2)=BMCREC("REF DATE")
- S XMB(3)=BMCRNUMB
- S XMB(4)=""
- S XMB(5)=$$VAL^XBDIQ1(90001,BMCRIEN,1201)
- S XMB(6)=$$FACREF^BMCRLU(BMCRIEN)
- S XMB(7)=$$VAL^XBDIQ1(90001,BMCRIEN,1301)
- S XMB(8)=$$VAL^XBDIQ1(90001,BMCRIEN,.32)
- ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ Added DOS to Message
- S XMB(8)=XMB(8)_" Date of Service: "_$$AVDOS^BMCRLU(BMCRIEN,"E")
- S Y=$P(^BMCREF(BMCRIEN,0),U,6)
- S:Y XMB(4)=$P(^VA(200,Y,0),U)
- S XMB(9)=$$VAL^XBDIQ1(90001,BMCRIEN,.04)
- D COMMENTS
- Q
- MSGPRV ;PRIM PROV AND REF PHY MESSAGE
- S Y=$P(^BMCREF(BMCRIEN,0),U,4),BMCHRN="",BMCSP=""
- F I=1:1:30 S BMCSP=BMCSP_" "
- S XMZ=""
- S XMB="BMC PROV REF ALERT" ;LABEL NEW Message
- S XMB(1)=BMCREC("PAT NAME")
- I $P(^BMCREF(BMCRIEN,0),U,5)'="" D
- .S I=$P(^BMCREF(BMCRIEN,0),U,5)
- .S BMCHRN=$P($G(^AUPNPAT(BMCDFN,41,I,0)),U,2)
- S XMB(2)=BMCRNUMB,XMB(3)=BMCHRN
- S XMB(4)="" S:BMCPPRV XMB(4)=XMB(4)_$P(^VA(200,BMCPPRV,0),U)
- S XMB(5)=$$DOB^AUPNPAT(BMCDFN,"E")
- S XMB(6)=$$FACREF^BMCRLU(BMCRIEN)
- S XMB(7)=$$AVDOS^BMCRLU(BMCRIEN,"E")
- S XMB(8)=$$VAL^XBDIQ1(90001,BMCRIEN,.04)
- D COMMENTS Q
- S XMTEXT="^XTMP(""BMCMSG"","_$J_","
- I $D(^BMCCOM("AD",BMCRIEN)) D
- .S BMCL=0,BMCL2=1
- .F S BMCL=$O(^BMCCOM("AD",BMCRIEN,BMCL)) Q:BMCL'?1N.N D
- ..S BMCCTYP=$P(^BMCCOM(BMCL,0),U,5)
- ..I BMCMODE="M",BMCDTYPE=14 Q:(BMCCTYP="M")!(BMCCTYP="D")
- ..I BMCMODE="A" Q:BMCCTYP'="B"
- ..I $D(^BMCCOM(BMCL,1)) D
- ...S I=$S(BMCCTYP="C":"Case Review",BMCCTYP="D":"Discharge",BMCCTYP="M":"Medical HX/Findings",1:"Business/CHS")
- ...S ^XTMP("BMCMSG",$J,BMCL2)=I_" Comments Date: "_$$FMTE^XLFDT($P(^BMCCOM(BMCL,0),U),"5D")_" By: "_$$VAL^XBDIQ1(90001.03,BMCL,.04)
- ...S BMCL1=0
- ...F S BMCL1=$O(^BMCCOM(BMCL,1,BMCL1)) Q:BMCL1'?1N.N D
- ....S BMCL2=BMCL2+1
- ....S ^XTMP("BMCMSG",$J,BMCL2)=^BMCCOM(BMCL,1,BMCL1,0)
- ..S BMCL2=BMCL2+1
- Q
- SND ;SEND MESSAGE
- D EN^XMB
- ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ ADDED TST;CALLING FROM API
- ;I $D(XMB) W !?5,"***ERROR: NO MESSAGE SENT***" G EXT
- I $D(XMB) W:$G(BMCAPIA)="" !?5,"***ERROR: NO MESSAGE SENT***" G EXT
- ;W !?5,"***MESSAGE SENT***"
- W:$G(BMCAPIA)="" !?5,"***MESSAGE SENT***"
- ADD ;IF MESSAGE SENT ADD TO RCIS MESSAGE FILE
- S (DIE,DIC)="^BMCMSG(",DIC(0)="L"
- D NOW^%DTC S X=%
- S DIC("DR")=".02////"_BMCRIEN_";.03////"_BMCRNUMB_";.04////"_DUZ_";.05////REFERRAL ALERT"
- D ^DIC S DA=+Y Q:Y<1
- I BMCMODE="M",BMCDTYPE=15 D APER Q
- AGRP ;ADD GROUPS MESSAGE WAS SENT TO
- S DA(1)=+Y,(DIE,DIC)=DIC_DA(1)_",1,",DA=1
- I '$D(^BMCMSG(DA(1),1)) S ^BMCMSG(DA(1),1,0)="^90001.571P^^"
- D ^DIC
- S BMCGRP=0 F S BMCGRP=$O(BMCGRPS(BMCGRP)) Q:BMCGRP'?1N.N D
- .S DR=".01////"_BMCGRP
- .D ^DIE
- .S $P(^BMCMSG(DA(1),1,0),U,3,4)=DA_U_DA
- .S DA=DA+1
- Q
- APER ;ADD PERSON MESSAGE WAS SENT TO
- S DA(1)=+Y,(DIE,DIC)=DIC_DA(1)_",2,",DA=1
- I '$D(^BMCMSG(DA(1),2)) S ^BMCMSG(DA(1),2,0)="^90001.572P^^"
- D ^DIC
- F BMCPER=BMCPPRV,BMCRPRV I BMCPER D Q:BMCPPRV=BMCRPRV
- .S DR=".01////"_BMCPER
- .D ^DIE
- .S $P(^BMCMSG(DA(1),2,0),U,3,4)=DA_U_DA
- .S DA=DA+1
- Q
- EXT K XMB,XMY,XMZ,DIR,DIC,DIE,DA,DR
- K BMCMSG,BMCGRP,BMCGRPS,BMCGRP1,BMCL,BMCL1,BMCL2,BMCLDT,BMCCTYP,BMCTMP
- K BMCPER,BMCPER1,^XTMP("BMCMSG",$J)
- Q
- BMCMM ; IHS/OIT/FCJ - RCIS - SEND MAILMAN MESSAGE ; [ 09/12/2006 11:50 AM ]
- +1 ;;4.0;REFERRED CARE INFO SYSTEM;**2**;JAN 09, 2006;Build 101
- +2 ;
- +3 ;IHS/ITSC/FCJ SEND MESSAGE TO GROUPS OR
- +4 ; REF PROVIDER AND PROVIDER ONLY
- +5 ; WILL LIST ANY PREVIOUS MESSAGE SENT AND
- +6 ; ALSO STORE HISTORY OF MSG SENT IN RCIS MESSAGE FILE
- +7 ; CALLED AFTER INITIAL ENTRY OF REF AND FROM MODIFY
- +8 ; OPTIONS 14 AND 15
- +9 ; Only BO notes are sent on the group message which is called
- +10 ; during adding a new ref and using modify option 14
- +11 ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ ADDED TST;CALLING FROM API AND EP
- +12 ; Added Case Com to message;Added type of referral and parameter
- +13 ; to identify patient to subject line
- +14 ;
- +15 ;
- ENMM ;EP;MESSAGE for NEW REF AND MODIFICATIONS
- +1 NEW Y,DIC
- +2 IF '$GET(BMCDFN)
- QUIT
- +3 IF '$GET(BMCRDATE)
- QUIT
- MSG ;TEST FOR EXISTING MESSAGES ALREADY SENT
- +1 IF $DATA(^BMCMSG("C",BMCRIEN))
- Begin DoDot:1
- +2 WRITE !!,"A Message has already been sent for this referral:"
- +3 SET BMCMSG=0
- WRITE !?3,"DATE",?25,"SENT BY",?55,"GROUP/PROV"
- +4 FOR
- SET BMCMSG=$ORDER(^BMCMSG("C",BMCRIEN,BMCMSG))
- IF BMCMSG'?1N.N
- QUIT
- Begin DoDot:2
- +5 SET Y=$PIECE(^BMCMSG(BMCMSG,0),U)
- DO DD^%DT
- +6 WRITE !?3,Y,?25,$PIECE(^VA(200,$PIECE(^BMCMSG(BMCMSG,0),U,4),0),U)
- +7 SET BMCGRP=0
- FOR
- SET BMCGRP=$ORDER(^BMCMSG(BMCMSG,1,BMCGRP))
- IF BMCGRP'?1N.N
- QUIT
- Begin DoDot:3
- +8 SET BMCGRP1=$PIECE(^BMCMSG(BMCMSG,1,BMCGRP,0),U)
- +9 WRITE ?55,$PIECE(^XMB(3.8,BMCGRP1,0),U),!
- End DoDot:3
- +10 SET BMCPER=0
- FOR
- SET BMCPER=$ORDER(^BMCMSG(BMCMSG,2,BMCPER))
- IF BMCPER'?1N.N
- QUIT
- Begin DoDot:3
- +11 SET BMCPER1=$PIECE(^BMCMSG(BMCMSG,2,BMCPER,0),U)
- +12 WRITE ?55,$PIECE(^VA(200,BMCPER1,0),U),!
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +13 IF '$TEST
- WRITE !!,"A Message has NOT been sent for this referral."
- +14 SET DIR(0)="Y"
- SET DIR("A")="Do you wish to send a message"
- SET DIR("B")="Y"
- +15 DO ^DIR
- KILL DIR
- IF $DATA(DIRUT)!'Y
- GOTO EXT
- +16 IF BMCMODE="M"
- IF BMCDTYPE=15
- DO MPER
- DO MSGPRV
- +17 IF '$TEST
- DO MGRP
- DO MSGGRP
- +18 DO SND
- +19 GOTO EXT
- QUIT
- MGRP ;SELECT MAIL GROUPS TO SEND MESSAGE TO
- +1 ;ENTER THE GROUP TO SEND IT TO AND ADD ENTRY TO THE RCIS MESSAGE FILE
- +2 SET BMCGRP="BMC"
- SET DIR(0)="S^"
- SET Y=0
- +3 FOR
- SET BMCGRP=$ORDER(^XMB(3.8,"B",BMCGRP))
- IF $EXTRACT(BMCGRP,1,3)'="BMC"
- QUIT
- Begin DoDot:1
- +4 SET BMCGRP1=0
- SET BMCGRP1=$ORDER(^XMB(3.8,"B",BMCGRP,BMCGRP1))
- +5 SET Y=Y+1
- SET BMCGRP(Y)=BMCGRP_U_BMCGRP1
- End DoDot:1
- +6 IF Y=0
- WRITE !,"THERE ARE NOT ANY RCIS MAIL GROUPS SET UP.",!,"If you would like to set up a mail group, use Mail Groups Option under the",!,"RCIS Management Menu."
- QUIT
- +7 FOR I=1:1:Y
- WRITE !?5,I_". "_$PIECE(BMCGRP(I),U)
- +8 SET DIR("A")="To select recipient group(s) enter a list or range of numbers"
- +9 SET DIR(0)="L^1:"_Y
- +10 DO ^DIR
- IF $DATA(DIRUT)
- WRITE !?5,"***MESSAGE WAS NOT SENT***"
- GOTO EXT
- +11 KILL XMB,XMY
- +12 FOR I=1:1
- IF $PIECE(Y,",",I)'?1N.N
- QUIT
- SET XMY("G."_$PIECE(BMCGRP($PIECE(Y,",",I)),U))=""
- SET BMCGRPS($PIECE(BMCGRP($PIECE(Y,",",I)),U,2))=""
- +13 QUIT
- MPER ;SETS PRIM PROV AND REF PROV TO AUTO SEND MESSAGE TO
- +1 SET BMCPPRV=$PIECE(^AUPNPAT(BMCDFN,0),U,14)
- +2 SET BMCRPRV=$PIECE(^BMCREF(BMCRIEN,0),U,6)
- +3 KILL XMB,XMY
- +4 IF 'BMCPPRV
- IF 'BMCRPRV
- WRITE !,"Primary Care Provider and Referring Provider are not definned.",!?5,"***MESSAGE WAS NOT SENT***"
- GOTO EXT
- +5 FOR BMCPER=BMCPPRV,BMCRPRV
- IF BMCPER
- Begin DoDot:1
- +6 SET XMY(BMCPER)=""
- End DoDot:1
- +7 QUIT
- MSGGRP ;EP CALL BY BMCAPIA1;GROUP MESSAGE
- +1 SET Y=$PIECE(^BMCREF(BMCRIEN,0),U,4)
- +2 SET XMZ=""
- +3 ;REF IF OPTION SET AND USER ANSWERS YES....
- +4 ;LABEL NEW Message
- SET XMB="BMC REFERRAL ALERT"
- +5 SET XMB(1)=BMCREC("PAT NAME")
- +6 SET XMB(1.1)=$SELECT($PIECE($GET(^BMCPARM(DUZ(2),4100)),U,7)="Y":XMB(1),1:"")
- +7 SET XMB(2)=BMCREC("REF DATE")
- +8 SET XMB(3)=BMCRNUMB
- +9 SET XMB(4)=""
- +10 SET XMB(5)=$$VAL^XBDIQ1(90001,BMCRIEN,1201)
- +11 SET XMB(6)=$$FACREF^BMCRLU(BMCRIEN)
- +12 SET XMB(7)=$$VAL^XBDIQ1(90001,BMCRIEN,1301)
- +13 SET XMB(8)=$$VAL^XBDIQ1(90001,BMCRIEN,.32)
- +14 ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ Added DOS to Message
- +15 SET XMB(8)=XMB(8)_" Date of Service: "_$$AVDOS^BMCRLU(BMCRIEN,"E")
- +16 SET Y=$PIECE(^BMCREF(BMCRIEN,0),U,6)
- +17 IF Y
- SET XMB(4)=$PIECE(^VA(200,Y,0),U)
- +18 SET XMB(9)=$$VAL^XBDIQ1(90001,BMCRIEN,.04)
- +19 DO COMMENTS
- +20 QUIT
- MSGPRV ;PRIM PROV AND REF PHY MESSAGE
- +1 SET Y=$PIECE(^BMCREF(BMCRIEN,0),U,4)
- SET BMCHRN=""
- SET BMCSP=""
- +2 FOR I=1:1:30
- SET BMCSP=BMCSP_" "
- +3 SET XMZ=""
- +4 ;LABEL NEW Message
- SET XMB="BMC PROV REF ALERT"
- +5 SET XMB(1)=BMCREC("PAT NAME")
- +6 IF $PIECE(^BMCREF(BMCRIEN,0),U,5)'=""
- Begin DoDot:1
- +7 SET I=$PIECE(^BMCREF(BMCRIEN,0),U,5)
- +8 SET BMCHRN=$PIECE($GET(^AUPNPAT(BMCDFN,41,I,0)),U,2)
- End DoDot:1
- +9 SET XMB(2)=BMCRNUMB
- SET XMB(3)=BMCHRN
- +10 SET XMB(4)=""
- IF BMCPPRV
- SET XMB(4)=XMB(4)_$PIECE(^VA(200,BMCPPRV,0),U)
- +11 SET XMB(5)=$$DOB^AUPNPAT(BMCDFN,"E")
- +12 SET XMB(6)=$$FACREF^BMCRLU(BMCRIEN)
- +13 SET XMB(7)=$$AVDOS^BMCRLU(BMCRIEN,"E")
- +14 SET XMB(8)=$$VAL^XBDIQ1(90001,BMCRIEN,.04)
- +15 DO COMMENTS
- QUIT
- +1 SET XMTEXT="^XTMP(""BMCMSG"","_$JOB_","
- +2 IF $DATA(^BMCCOM("AD",BMCRIEN))
- Begin DoDot:1
- +3 SET BMCL=0
- SET BMCL2=1
- +4 FOR
- SET BMCL=$ORDER(^BMCCOM("AD",BMCRIEN,BMCL))
- IF BMCL'?1N.N
- QUIT
- Begin DoDot:2
- +5 SET BMCCTYP=$PIECE(^BMCCOM(BMCL,0),U,5)
- +6 IF BMCMODE="M"
- IF BMCDTYPE=14
- IF (BMCCTYP="M")!(BMCCTYP="D")
- QUIT
- +7 IF BMCMODE="A"
- IF BMCCTYP'="B"
- QUIT
- +8 IF $DATA(^BMCCOM(BMCL,1))
- Begin DoDot:3
- +9 SET I=$SELECT(BMCCTYP="C":"Case Review",BMCCTYP="D":"Discharge",BMCCTYP="M":"Medical HX/Findings",1:"Business/CHS")
- +10 SET ^XTMP("BMCMSG",$JOB,BMCL2)=I_" Comments Date: "_$$FMTE^XLFDT($PIECE(^BMCCOM(BMCL,0),U),"5D")_" By: "_$$VAL^XBDIQ1(90001.03,BMCL,.04)
- +11 SET BMCL1=0
- +12 FOR
- SET BMCL1=$ORDER(^BMCCOM(BMCL,1,BMCL1))
- IF BMCL1'?1N.N
- QUIT
- Begin DoDot:4
- +13 SET BMCL2=BMCL2+1
- +14 SET ^XTMP("BMCMSG",$JOB,BMCL2)=^BMCCOM(BMCL,1,BMCL1,0)
- End DoDot:4
- End DoDot:3
- +15 SET BMCL2=BMCL2+1
- End DoDot:2
- End DoDot:1
- +16 QUIT
- SND ;SEND MESSAGE
- +1 DO EN^XMB
- +2 ;BMC*4.0*2 8/2/05 IHS/OIT/FCJ ADDED TST;CALLING FROM API
- +3 ;I $D(XMB) W !?5,"***ERROR: NO MESSAGE SENT***" G EXT
- +4 IF $DATA(XMB)
- IF $GET(BMCAPIA)=""
- WRITE !?5,"***ERROR: NO MESSAGE SENT***"
- GOTO EXT
- +5 ;W !?5,"***MESSAGE SENT***"
- +6 IF $GET(BMCAPIA)=""
- WRITE !?5,"***MESSAGE SENT***"
- ADD ;IF MESSAGE SENT ADD TO RCIS MESSAGE FILE
- +1 SET (DIE,DIC)="^BMCMSG("
- SET DIC(0)="L"
- +2 DO NOW^%DTC
- SET X=%
- +3 SET DIC("DR")=".02////"_BMCRIEN_";.03////"_BMCRNUMB_";.04////"_DUZ_";.05////REFERRAL ALERT"
- +4 DO ^DIC
- SET DA=+Y
- IF Y<1
- QUIT
- +5 IF BMCMODE="M"
- IF BMCDTYPE=15
- DO APER
- QUIT
- AGRP ;ADD GROUPS MESSAGE WAS SENT TO
- +1 SET DA(1)=+Y
- SET (DIE,DIC)=DIC_DA(1)_",1,"
- SET DA=1
- +2 IF '$DATA(^BMCMSG(DA(1),1))
- SET ^BMCMSG(DA(1),1,0)="^90001.571P^^"
- +3 DO ^DIC
- +4 SET BMCGRP=0
- FOR
- SET BMCGRP=$ORDER(BMCGRPS(BMCGRP))
- IF BMCGRP'?1N.N
- QUIT
- Begin DoDot:1
- +5 SET DR=".01////"_BMCGRP
- +6 DO ^DIE
- +7 SET $PIECE(^BMCMSG(DA(1),1,0),U,3,4)=DA_U_DA
- +8 SET DA=DA+1
- End DoDot:1
- +9 QUIT
- APER ;ADD PERSON MESSAGE WAS SENT TO
- +1 SET DA(1)=+Y
- SET (DIE,DIC)=DIC_DA(1)_",2,"
- SET DA=1
- +2 IF '$DATA(^BMCMSG(DA(1),2))
- SET ^BMCMSG(DA(1),2,0)="^90001.572P^^"
- +3 DO ^DIC
- +4 FOR BMCPER=BMCPPRV,BMCRPRV
- IF BMCPER
- Begin DoDot:1
- +5 SET DR=".01////"_BMCPER
- +6 DO ^DIE
- +7 SET $PIECE(^BMCMSG(DA(1),2,0),U,3,4)=DA_U_DA
- +8 SET DA=DA+1
- End DoDot:1
- IF BMCPPRV=BMCRPRV
- QUIT
- +9 QUIT
- EXT KILL XMB,XMY,XMZ,DIR,DIC,DIE,DA,DR
- +1 KILL BMCMSG,BMCGRP,BMCGRPS,BMCGRP1,BMCL,BMCL1,BMCL2,BMCLDT,BMCCTYP,BMCTMP
- +2 KILL BMCPER,BMCPER1,^XTMP("BMCMSG",$JOB)
- +3 QUIT