Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: AMHGSGP

AMHGSGP.m

Go to the documentation of this file.
  1. AMHGSGP ; IHS/CMI/MAW - AMHG Save Group Encounter 3/8/2009 7:41:21 PM ;
  1. ;;4.0;IHS BEHAVIORAL HEALTH;**2,4,5**;JUN 02, 2010;Build 18
  1. ;
  1. ;
  1. ;
  1. DEBUG(RETVAL,AMHSTR) ;replace tag below to allow Serenji debug of GUI
  1. D DEBUG^%Serenji("GP^AMHGSGP(.RETVAL,.AMHSTR)")
  1. Q
  1. ;
  1. GP(RETVAL,AMHSTR) ;-- save group data
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHPP,AMHPRG,AMHGN,AMHCL,AMNNS,AMHTOC,AMHEL,AMHED,AMHCS,AMHACT,AMHAT,AMHSP,AMHPV,AMHPRGN,AMHCPT,AMHEDU,AMHPATS,AMHER,AMHCC
  1. N PV,CPT,EDU,PATS
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHPP=$P(AMHSTR,P,3)
  1. S AMHPRG=$$SCI^AMHGT(9002011.67,.02,$P(AMHSTR,P,4))
  1. S AMHGN=$P(AMHSTR,P,5)
  1. S AMHCL=$P(AMHSTR,P,6)
  1. S AMHNS=$P(AMHSTR,P,7)
  1. S AMHTOC=$P(AMHSTR,P,8)
  1. S AMHEL=$P(AMHSTR,P,9)
  1. S AMHED=+$P(AMHSTR,P,10)
  1. S AMHCS=$P(AMHSTR,P,11)
  1. S AMHACT=$P(AMHSTR,P,12)
  1. S AMHAT=$P(AMHSTR,P,13)
  1. S AMHSP=$P(AMHSTR,P,14)
  1. S AMHPV=$P(AMHSTR,P,15)
  1. S AMHPRGN=$P(AMHSTR,P,16)
  1. S AMHCPT=$P(AMHSTR,P,17)
  1. S AMHEDU=$P(AMHSTR,P,18)
  1. S AMHPATS=$P(AMHSTR,P,19)
  1. S AMHCC=$P(AMHSTR,P,20)
  1. D ARRAY^AMHGU(.PV,AMHPV)
  1. D ARRAY^AMHGU(.CPT,AMHCPT)
  1. D ARRAY^AMHGU(.EDU,AMHEDU)
  1. D ARRAY^AMHGU(.PATS,AMHPATS)
  1. D GP^AMHGEGP(.AMHREC,AMHDM,AMHREC,AMHPRG,AMHGN,AMHCL,AMHNS,AMHTOC,AMHEL,AMHED,AMHCS,AMHACT,AMHAT,AMHCC)
  1. I $G(AMHER)="" D CLNPRV^AMHGEGP(AMHREC)
  1. I $G(AMHER)="" D MODPRV^AMHGEGP(AMHPP,AMHDM,AMHREC,"","P")
  1. ;v4.0p2 ihs/cmi/maw modified all below to not file if in edit mode
  1. I $G(AMHER)="",AMHDM="A" D SP^AMHGEGP(AMHDM,AMHREC,"",AMHSP)
  1. I $G(AMHER)="",AMHDM="A" D GPOV^AMHGEGP(AMHDM,AMHREC,.PV)
  1. I $G(AMHER)="",AMHDM="A" D PN^AMHGEGP(AMHDM,AMHREC,AMHPRGN,"")
  1. I $G(AMHER)="",AMHDM="A" D CPT^AMHGEGP(AMHREC,.CPT)
  1. I $G(AMHER)="",AMHDM="A" D EDU^AMHGEGP(AMHREC,.EDU)
  1. I $G(AMHER)="",AMHDM="A" D PATS^AMHGEGP(AMHREC,.PATS)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. POV(RETVAL,AMHSTR) ;-- save POV
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHPV,AMHP,AMHER,APV
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHPV=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. D ARRAY^AMHGU(.APV,AMHPV)
  1. D POV^AMHGEGP(AMHDM,AMHREC,AMHP,.APV)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. CPT(RETVAL,AMHSTR) ;-- save CPT
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHCPT,AMHP,AMHER
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHCPT=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. N ACPT
  1. D ARRAY^AMHGU(.ACPT,.AMHCPT)
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(ACPT(AMHDA)) Q:'AMHDA D
  1. . N CPT
  1. . S CPT=+$G(ACPT(AMHDA))
  1. . S QTY=+$P(ACPT(AMHDA),R,4)
  1. . I QTY<1 S QTY=1
  1. . S MOD1=$P(ACPT(AMHDA),R,5)
  1. . S MOD2=$P(ACPT(AMHDA),R,7)
  1. . D MODCPT^AMHGEVF(CPT,QTY,MOD1,MOD2,AMHP,AMHREC)
  1. I AMHDM="E" D DELCPT^AMHGEVF(AMHREC,.ACPT)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. MH(RETVAL,AMHSTR) ;-- save MHSS records
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHMH,AMHP,MH,AMHER
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHMH=$P(AMHSTR,P,3)
  1. D ARRAY^AMHGU(.MH,AMHMH)
  1. D MH^AMHGEGP(AMHREC,.MH)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. PNCA(RETVAL,AMHSTR) ;-- save progress notes/comment next appointment
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHPN,AMHCA,AMHP,AMHER,AMHCC
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHPN=$P(AMHSTR,P,3)
  1. S AMHCA=$P(AMHSTR,P,4)
  1. S AMHP=$P(AMHSTR,P,5)
  1. S AMHCC=$P(AMHSTR,P,6)
  1. I $G(AMHDM)="A" S $P(^AMHREC(AMHREC,21),U)=AMHCC
  1. D PN^AMHGEVF(AMHDM,AMHREC,AMHPN,AMHP)
  1. D CMT^AMHGEVF(AMHDM,AMHREC,AMHCA,AMHP)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. DEL(RETVAL,AMHSTR) ;-- mark a record as deleted
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHER
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. I $G(AMHSTR)="" D CATSTR^AMHGU(.AMHSTR,.AMHSTR)
  1. K ^AMHTMP($J)
  1. S AMHREC=$P(AMHSTR,P)
  1. ;D DELI(AMHREC)
  1. S DIK="^AMHGROUP(",DA=AMHREC D ^DIK
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=$S($G(AMHER)]"":AMHER,1:AMHREC)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. DELI(REC) ;-- delete each individual entry first
  1. N RDA
  1. S RDA=0 F S RDA=$O(^AMHGROUP(REC,61,RDA)) Q:'RDA D
  1. . N IREC
  1. . S IREC=$G(^AMHGROUP(REC,61,RDA,0))
  1. . D EN^AMHGVDEL(.IREC,IREC)
  1. Q
  1. ;