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

AMHGSVF.m

Go to the documentation of this file.
  1. AMHGSVF ; IHS/CMI/MAW - AMHG Save Visit Form Data (frmVisitDataEntry) 2/12/2009 3:01:26 PM ;
  1. ;;4.0;IHS BEHAVIORAL HEALTH;**1,3,4,5,6,10**;JUN 02, 2010;Build 15
  1. ;
  1. ;
  1. ;
  1. ;
  1. DEBUG(RETVAL,AMHSTR) ;-- debug entry point
  1. D DEBUG^%Serenji("PN^AMHGSVF(.RETVAL,.AMHSTR)")
  1. Q
  1. ;
  1. VISIT(RETVAL,AMHSTR) ;-- save visit form, called from method SaveVisit in clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHPP,AMHPRO,AMHCLN,AMHTOC,AMHARR,AMHEDT,AMHLOC,AMHAW,AMHCOM,AMHP,AMHER,AMHGN,AMHTIG,AMHTM,AMHESIG,AMHTMP,AMHATG
  1. S P="|",R="~"
  1. S RETVAL="^AMHTMP("_$J_")"
  1. S AMHI=0
  1. K ^AMHTMP($J)
  1. S AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHPP=$P(AMHSTR,P,3)
  1. S AMHPRO=$P(AMHSTR,P,4)
  1. S AMHPRO=$$SCI^AMHGT(9002011,.02,AMHPRO)
  1. S AMHCLN=$P(AMHSTR,P,5)
  1. S AMHTOC=$P(AMHSTR,P,6)
  1. S AMHARR=$TR($P(AMHSTR,P,7),":")
  1. S AMHEDT=+$P(AMHSTR,P,8)
  1. ;S AMHTM=+$$TM^AMHGU($P(AMHEDT,".",2))
  1. S AMHTMP=+$P(AMHEDT,".",2)
  1. S AMHLOC=$P(AMHSTR,P,9)
  1. S AMHAW=$P(AMHSTR,P,10)
  1. S AMHAW=$$SCI^AMHGT(9002011,.11,AMHAW)
  1. S AMHCOM=$P(AMHSTR,P,11)
  1. S AMHP=$P(AMHSTR,P,12)
  1. S AMHGN=$P(AMHSTR,P,13)
  1. S AMHTIG=$P(AMHSTR,P,14)
  1. S AMHESIG=$P(AMHSTR,P,15)
  1. S AMHATG=$P(AMHSTR,P,16)
  1. D MODV^AMHGEVF(.AMHIEN,AMHDM,AMHREC,AMHPP,AMHPRO,AMHCLN,AMHTOC,AMHARR,AMHEDT,AMHLOC,AMHAW,AMHCOM,AMHP,AMHGN,AMHTIG,AMHATG)
  1. ;cmi/maw v4.0p10 update the call below to not change the record if an edit and already signed
  1. I $G(AMHESIG) D UPDREC^AMHGESIG(AMHIEN,DUZ)
  1. S @RETVAL@(AMHI)="T00010BMXIEN"_$C(30)
  1. S AMHI=AMHI+1
  1. S @RETVAL@(AMHI)=+$G(AMHIEN)_$C(30)
  1. S @RETVAL@(AMHI+1)=$C(31)
  1. Q
  1. ;
  1. POV(RETVAL,AMHSTR) ;-- save POV called from method SavePOV in clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHA2,AMHA3,AMHA4,AMHA5,AMHP,AMHER,AMHGAF
  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 AMHA2=$P(AMHSTR,P,3)
  1. S AMHA3=$P(AMHSTR,P,4)
  1. S AMHA4=$P(AMHSTR,P,5)
  1. S AMHA5=$P(AMHSTR,P,6)
  1. S AMHP=$P(AMHSTR,P,7)
  1. S AMHGAF=$P(AMHSTR,P,8)
  1. N AMH2,AMH4
  1. D ARRAY^AMHGU(.AMH2,AMHA2)
  1. D ARRAY^AMHGU(.AMH4,AMHA4)
  1. D AXIS2(AMHDM,AMHREC,AMHP,.AMH2)
  1. D AXIS3(AMHDM,AMHREC,AMHP,AMHA3)
  1. D AXIS4(AMHDM,AMHREC,AMHP,.AMH4)
  1. D AXIS5(AMHDM,AMHREC,AMHP,AMHA5,AMHGAF)
  1. ;D VAUD^AMHGEVF(AMHREC)
  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. AXIS2(D,RC,P,A2) ;EP -- add/modify pov
  1. N AMHDA,R,AMHN
  1. S R="~"
  1. D CLNPOV(RC) ;ihs/cmi/maw patch 3 remove all povs before readding or editing since primary and secondary not segregated
  1. S AMHDA=0 F S AMHDA=$O(A2(AMHDA)) Q:'AMHDA D
  1. . N STR,PIEN,PCODE,PNARR
  1. . S STR=$G(A2(AMHDA))
  1. . S PIEN=$P(STR,R)
  1. . S PCODE=$P(STR,R,2)
  1. . S PNARR=$P(STR,R,3)
  1. . I $G(PNARR)]"" D
  1. ..S AMHN=$$FNDNARR^AMHGU(PNARR,1)
  1. . D ADDPOV^AMHGEVF(PIEN,P,RC,$G(AMHN))
  1. . Q
  1. . ;below code was used before patch 3 not needed anymore
  1. . I D="A" D ADDPOV^AMHGEVF(PIEN,P,RC,$G(AMHN)) Q
  1. . I D="E" D Q
  1. .. N AMHPREC
  1. .. S AMHPREC=$$FNDPOV^AMHGU(PIEN,RC)
  1. .. I 'AMHPREC D ADDPOV^AMHGEVF(PIEN,P,RC,$G(AMHN)) Q
  1. .. D EDITPOV^AMHGEVF(AMHPREC,$G(AMHN))
  1. I D="E" D Q
  1. . D DELPOV^AMHGEVF(RC,.A2)
  1. Q
  1. ;
  1. CLNPOV(REC) ;-- clean out all POV records first
  1. N IEN
  1. S IEN=0 F S IEN=$O(^AMHRPRO("AD",REC,IEN)) Q:'IEN D
  1. . S DIK="^AMHRPRO(",DA=IEN D ^DIK
  1. Q
  1. ;
  1. AXIS3(D,RC,P,A3) ;-- file axis 3 data
  1. Q:$G(A3)=""
  1. N AMHWP
  1. D ARRAYT^AMHGU(.AMHWP,A3) ;parse the text into an array
  1. N AMHFDA,AMHIENS,AMHERRR
  1. S AMHIENS=RC_","
  1. D WP^AMHGU(.AMHERRR,9002011,AMHIENS,5301,.AMHWP)
  1. Q
  1. ;
  1. AXIS4(D,RC,P,A4) ;-- file axis 4 data
  1. N AMHDA,R
  1. S R="~"
  1. I D="E" D CLNA4^AMHGEVF(RC)
  1. S AMHDA=0 F S AMHDA=$O(A4(AMHDA)) Q:'AMHDA D
  1. . N STR,PIEN,PCODE,PNARR
  1. . S STR=$G(A4(AMHDA))
  1. . S PIEN=$P(STR,R)
  1. . S PCODE=$P(STR,R,2)
  1. . S PNARR=$P(STR,R,3)
  1. . D ADDAXIS4^AMHGEVF(PIEN,P,RC,PNARR) Q
  1. Q
  1. ;
  1. AXIS5(D,RC,P,A5,GAF) ;-- file axis 5 data
  1. N AMHFDA,AMHIENS,AMHERRR,AMHA5
  1. S AMHIENS=RC_","
  1. S AMHFDA(9002011,AMHIENS,.14)=A5
  1. S AMHFDA(9002011,AMHIENS,1115)=GAF
  1. D FILE^DIE("K","AMHFDA","AMHERRR(1)")
  1. I '$D(AMHERRR) S AMHA5=RC
  1. Q
  1. ;
  1. ACT(RETVAL,AMHSTR) ;-- save activity tab, called from method SaveActivity in clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHACT,AMHVF,AMHAT,AMHIU,AMHLSS,AMHNS,AMHER,AMHCPT,AMHSP
  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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHACT=$P(AMHSTR,P,3)
  1. S AMHVF=$P(AMHSTR,P,4)
  1. S AMHAT=$P(AMHSTR,P,5)
  1. S AMHIU=$P(AMHSTR,P,6)
  1. S AMHLSS=$P(AMHSTR,P,7)
  1. S AMHNS=$P(AMHSTR,P,8)
  1. S AMHCPT=$P(AMHSTR,P,9)
  1. S AMHSP=$P(AMHSTR,P,10)
  1. S AMHP=$P(AMHSTR,P,11)
  1. D ACT^AMHGEVF(.AMHIEN,AMHDM,AMHREC,AMHACT,AMHVF,AMHAT,AMHIU,AMHLSS,AMHNS,AMHP)
  1. D CPT(AMHDM,AMHREC,AMHP,AMHCPT)
  1. D SP(AMHDM,AMHREC,AMHP,AMHSP)
  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(D,RC,P,CPT) ;-- file cpt codes from activity tab
  1. N ACPT,QTY,MOD1,MOD2,R
  1. S R="~"
  1. D ARRAY^AMHGU(.ACPT,.CPT)
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(ACPT(AMHDA)) Q:'AMHDA D
  1. . N CPT
  1. . S CPT=+$P(ACPT(AMHDA),R)
  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,6)
  1. . D MODCPT^AMHGEVF(CPT,QTY,MOD1,MOD2,P,RC)
  1. I D="E" D DELCPT^AMHGEVF(RC,.ACPT)
  1. Q
  1. ;
  1. SP(D,RC,P,SP) ;EP -- file secondary providers from activity tab
  1. N ASP
  1. D ARRAY^AMHGU(.ASP,.SP)
  1. I D="E" D DELPRV^AMHGEVF(RC,.ASP,"S")
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(ASP(AMHDA)) Q:'AMHDA D
  1. . N PRV
  1. . S PRV=+$G(ASP(AMHDA))
  1. . D MODPRV^AMHGEVF(PRV,D,RC,P,"S")
  1. ;ihs/cmi/maw 01.16.2013 v4.0p3 moved call to above to cleanup secondary providers
  1. ;I D="E" D DELPRV^AMHGEVF(RC,.ASP,"S")
  1. Q
  1. ;
  1. PN(RETVAL,AMHSTR) ;-- file progress notes tab called from SaveProgressNotes method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHCC,AMHPN,AMHCMT,AMHPD,AMHPLN,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHCC=$P(AMHSTR,P,3)
  1. S AMHPN=$P(AMHSTR,P,4)
  1. S AMHCMT=$P(AMHSTR,P,5)
  1. S AMHPD=$P(AMHSTR,P,6)
  1. S AMHPLN=$P(AMHSTR,P,7)
  1. S AMHP=$P(AMHSTR,P,8)
  1. D CCPD^AMHGEVF(AMHDM,AMHREC,AMHCC,AMHPD,AMHPLN,AMHP)
  1. D PN^AMHGEVF(AMHDM,AMHREC,AMHPN,AMHP)
  1. D CMT^AMHGEVF(AMHDM,AMHREC,AMHCMT,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. RX(RETVAL,AMHSTR) ;-- file rx notes tab, called from the SaveRX method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHRX,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHRX=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. S @RETVAL@(AMHI)="T00030Result"_$C(30)
  1. D RX^AMHGEVF(AMHDM,AMHREC,AMHRX,AMHP)
  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. EDU(RETVAL,AMHSTR) ;-- file the education topics from the wellness tab, called from the SaveEducationTopics method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHEDU,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHEDU=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. N EDU
  1. D ARRAY^AMHGU(.EDU,AMHEDU)
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(EDU(AMHDA)) Q:'AMHDA D
  1. . N EDUE,EDUI,TIME,LOU,CMT,CPT,STA,GOAL,IG,REA,PRVI
  1. . S EDU=$P(EDU(AMHDA),R)
  1. . S EDUI=$O(^AUTTEDT("B",EDU,0))
  1. . S TIME=$P(EDU(AMHDA),R,2)
  1. . S LOU=$$SCI^AMHGT(9002011.05,.08,$P(EDU(AMHDA),R,3))
  1. . S CMT=$P(EDU(AMHDA),R,4)
  1. . S CPT=$P(EDU(AMHDA),R,5)
  1. . I $G(CPT)]"" S CPT=$O(^ICPT("B",CPT,0))
  1. . S STA=$$SCI^AMHGT(9002011.05,.11,$P(EDU(AMHDA),R,6))
  1. . S GOAL=$P(EDU(AMHDA),R,7)
  1. . S IG=$P(EDU(AMHDA),R,8)
  1. . S REA=$S($P(EDU(AMHDA),R,9)]"":$O(^AUTTRTL("B",$P(EDU(AMHDA),R,9),0)),1:"")
  1. . S PRVI=$P(EDU(AMHDA),R,10)
  1. . D MODEDU^AMHGEVF(AMHDM,AMHREC,AMHP,EDUI,TIME,LOU,CMT,CPT,STA,GOAL,IG,REA,PRVI)
  1. I AMHDM="E" D DELEDU^AMHGEVF(AMHREC,.EDU)
  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. HF(RETVAL,AMHSTR) ;-- file the health factors from the wellness tab, called from the SaveHealthFactors method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHHF,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHHF=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. N HF
  1. D ARRAY^AMHGU(.HF,AMHHF)
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(HF(AMHDA)) Q:'AMHDA D
  1. . N HFE,HFI,LS,QTY,CMT
  1. . S HFE=$P(HF(AMHDA),R)
  1. . S HFI=$O(^AUTTHF("B",HFE,0))
  1. . S LS=$$SCI^AMHGT(9002011.08,.04,$P(HF(AMHDA),R,2))
  1. . S QTY=$P(HF(AMHDA),R,3)
  1. . S CMT=$P(HF(AMHDA),R,4)
  1. . D MODHF^AMHGEVF(AMHDM,AMHREC,AMHP,HFI,LS,QTY,CMT)
  1. I AMHDM="E" D DELHF^AMHGEVF(AMHREC,.HF)
  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. SCREEN(RETVAL,AMHSTR) ;file screening from the wellness tab, called from the SaveScreening method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHA,AMHAC,AMHD,AMHDC,AMHIP,AMHIPC,AMHPP,AMHP,AMHER,AMHAPRV,AMHDPRV,AMHIPRV
  1. N AMHS,AMHSC,AMHSPRV
  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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHA=$$SCI^AMHGT(9002011,1403,$P(AMHSTR,P,3))
  1. S AMHAC=$P(AMHSTR,P,4)
  1. S AMHD=$$SCI^AMHGT(9002011,1405,$P(AMHSTR,P,5))
  1. S AMHDC=$P(AMHSTR,P,6)
  1. S AMHIP=$$SCI^AMHGT(9002011,1401,$P(AMHSTR,P,7))
  1. S AMHIPC=$P(AMHSTR,P,8)
  1. S AMHPP=$P(AMHSTR,P,9)
  1. S AMHP=$P(AMHSTR,P,10)
  1. S AMHAPRV=$P(AMHSTR,P,11)
  1. S AMHDPRV=$P(AMHSTR,P,12)
  1. S AMHIPRV=$P(AMHSTR,P,13)
  1. S AMHS=$$SCI^AMHGT(9002011,1407,$P(AMHSTR,P,14))
  1. S AMHSC=$P(AMHSTR,P,15)
  1. S AMHSPRV=$P(AMHSTR,P,16)
  1. D SCREEN^AMHGEVF(AMHDM,AMHREC,AMHP,AMHPP,AMHA,AMHAC,AMHD,AMHDC,AMHIP,AMHIPC,AMHAPRV,AMHDPRV,AMHIPRV,AMHS,AMHSC,AMHSPRV)
  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. MSR(RETVAL,AMHSTR) ;-- file measurements from the measurements tab, called from the SaveMeasurements tab of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHMSR,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHMSR=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. N MSR
  1. D ARRAY^AMHGU(.MSR,AMHMSR)
  1. N AMHDA
  1. S AMHDA=0 F S AMHDA=$O(MSR(AMHDA)) Q:'AMHDA D
  1. . N MSRE,MSRI,VAL,PRVI
  1. . S MSRE=$P(MSR(AMHDA),R)
  1. . S MSRI=$O(^AUTTMSR("B",MSRE,0))
  1. . S VAL=$P(MSR(AMHDA),R,3)
  1. . S PRVI=$P(MSR(AMHDA),R,4)
  1. . D MODMSR^AMHGEVF(AMHDM,AMHREC,AMHP,MSRI,VAL,PRVI)
  1. I AMHDM="E" D DELMSR^AMHGEVF(AMHREC,.MSR)
  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. ASS(RETVAL,AMHSTR) ;-- save assessment from assessment tab, called from SaveAssessment method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHA,AMHP,AMHER,AMHIT,AMHPP,AMHPRG,AMHEDT
  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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHA=$P(AMHSTR,P,3)
  1. S AMHP=$P(AMHSTR,P,4)
  1. S AMHIT=$P(AMHSTR,P,5)
  1. S AMHPP=$P(AMHSTR,P,6)
  1. S AMHPRG=$$SCI^AMHGT(9002011,.02,$P(AMHSTR,P,7))
  1. S AMHEDT=$P($P(AMHSTR,P,8),".")
  1. D ASS^AMHGEVF(AMHDM,AMHREC,AMHA,AMHP,AMHIT,AMHPP,AMHPRG,AMHEDT)
  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. CD(RETVAL,AMHSTR) ;-- save CD data from CD Data tab, called from SaveCDData method of clsVisitDataEntry
  1. S X="MERR^AMHGU",@^%ZOSF("TRAP") ; m error trap
  1. N AMHI,P,R,AMHDM,AMHREC,AMHCDC,AMHCDT,AMHTOC,AMHDIR,AMHDIA,AMHP,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 AMHDM=$P(AMHSTR,P)
  1. S AMHREC=$P(AMHSTR,P,2)
  1. S AMHCDC=$P(AMHSTR,P,3)
  1. S AMHCDT=$P(AMHSTR,P,4)
  1. S AMHTOC=$P(AMHSTR,P,5)
  1. S AMHDIR=$P(AMHSTR,P,6)
  1. S AMHDIA=$P(AMHSTR,P,7)
  1. S AMHP=$P(AMHSTR,P,8)
  1. D CD^AMHGEVF(AMHDM,AMHREC,AMHP,AMHCDC,AMHCDT,AMHTOC,AMHDIR,AMHDIA)
  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 EN^AMHGVDEL(.AMHREC,AMHREC)
  1. I $E($G(RET),1,2)="-1" D
  1. . S AMHER="0~"_$P(RET,$C(30),2)
  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. ;