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

ATXGU.m

Go to the documentation of this file.
  1. ATXGU ;cmi/anch/maw - ATX Gui Taxonomy Utilities
  1. ;;5.1;TAXONOMY;**11**;FEB 04, 1997;Build 48
  1. ;
  1. ;generic Taxonomy GUI calls
  1. ;cmi/anch/maw 3/8/2007 modified MED to remove screen on inactive meds
  1. ;
  1. Q
  1. DEBUG(RETVAL,BGPSTR) ;run the debugger
  1. D DEBUG^%Serenji("TAX^ATXGU(.RETVAL,.BGPSTR)")
  1. Q
  1. ;
  1. CATSTR(ATXSRET,STR) ;EP - concatenate string
  1. N ATXDA
  1. S ATXSRET=""
  1. S ATXDA=0 F S ATXDA=$O(STR(ATXDA)) Q:'ATXDA D
  1. . S ATXSRET=ATXSRET_$G(STR(ATXDA))
  1. Q
  1. ;
  1. MERR ; M TRAP
  1. N X
  1. X ("S X=$"_"ZE")
  1. S X="MUMPS error: """_X_""""
  1. D ERR(X)
  1. Q
  1. ;
  1. ERR(ERR) ;
  1. N X
  1. S X="ERROR|"_ERR_$C(30)
  1. S @ATXRET@(1)=X
  1. Q
  1. ;
  1. FTAX(ATXRET,ATXSTR) ;-- get taxonomies w file # passed in
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N P,ATXI,ATXFN,ATXIEN
  1. S P="|"
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ^ATXTMP($J,ATXI)="T00007BMXIEN^T00080Taxonomy"_$C(30)
  1. S ATXFN=$P(ATXSTR,P)
  1. S ATXIEN=0 F S ATXIEN=$O(^ATXAX("B",ATXIEN)) Q:ATXIEN="" D
  1. . N ATXDA
  1. . S ATXDA=0 F S ATXDA=$O(^ATXAX("B",ATXIEN,ATXDA)) Q:'ATXDA D
  1. .. I ATXFN]"" Q:$P($G(^ATXAX(ATXDA,0)),U,15)'=ATXFN
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXDA_U_$P($G(^ATXAX(ATXDA,0)),U)_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. MED(ATXRET) ;-- drugs
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXMED,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080MED"_$C(30)
  1. S ATXMED=0 F S ATXMED=$O(^PSDRUG("B",ATXMED)) Q:ATXMED="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^PSDRUG("B",ATXMED,ATXIEN)) Q:'ATXIEN D
  1. .. ;Q:$G(^PSDRUG(ATXIEN,"I")) ;need to be able to add inactive drugs for BGP
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXMED_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. IMM(ATXRET) ;-- imm
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXIMM,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080IMM"_$C(30)
  1. S ATXIMM=0 F S ATXIMM=$O(^AUTTIMM("D",ATXIMM)) Q:ATXIMM="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTIMM("D",ATXIMM,ATXIEN)) Q:'ATXIEN D
  1. .. ;Q:$P($G(^AUTTIMM(ATXIEN,0)),U,7)
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXIMM_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. SKT(ATXRET) ;-- skin test
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXSKT,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080SKT"_$C(30)
  1. S ATXSKT=0 F S ATXSKT=$O(^AUTTSK("B",ATXSKT)) Q:ATXSKT="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTSK("B",ATXSKT,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXSKT_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. DXP(ATXRET) ;-- diagnostic procedure
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXDXP,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080DXP"_$C(30)
  1. S ATXDXP=0 F S ATXDXP=$O(^AUTTDXPR("B",ATXDXP)) Q:ATXDXP="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTDXPR("B",ATXDXP,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXDXP_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. XAM(ATXRET) ;-- exam
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXXAM,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080XAM"_$C(30)
  1. S ATXXAM=0 F S ATXXAM=$O(^AUTTEXAM("B",ATXXAM)) Q:ATXXAM="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTEXAM("B",ATXXAM,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXXAM_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. RAD(ATXRET) ;-- rad
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXRAD,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080RAD"_$C(30)
  1. S ATXRAD=0 F S ATXRAD=$O(^RAMIS(71,"B",ATXRAD)) Q:ATXRAD="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^RAMIS(71,"B",ATXRAD,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXRAD_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. RFL(ATXRET) ;-- refusal types
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXRFL,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080REFUSAL"_$C(30)
  1. S ATXRFL=0 F S ATXRFL=$O(^AUTTREFT("B",ATXRFL)) Q:ATXRFL="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTREFT("B",ATXRFL,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXRFL_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. EDU(ATXRET) ;-- education topics
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXEDU,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050EDUCATIONTOPICS"_$C(30)
  1. S ATXEDU=0 F S ATXEDU=$O(^AUTTEDT("B",ATXEDU)) Q:ATXEDU="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTEDT("B",ATXEDU,ATXIEN)) Q:'ATXIEN D
  1. .. ;Q:$P($G(^AUTTEDT(ATXIEN,0)),U,3) ;inactive
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXEDU_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. DEDU(ATXRET) ;-- get all diabetes educ
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXEDU,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050EDUCATIONTOPICS"_$C(30)
  1. S ATXEDU=0 F S ATXEDU=$O(^AUTTEDT("B",ATXEDU)) Q:ATXEDU="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTEDT("B",ATXEDU,ATXIEN)) Q:'ATXIEN D
  1. .. ;Q:$P($G(^AUTTEDT(ATXIEN,0)),U,3)
  1. .. Q:$E($P($G(^AUTTEDT(ATXIEN,0)),U),1,2)'="DM"
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXEDU_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. ICD(ATXRET) ;-- get all POV's
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXPOV,ATXI,ATXERR,ATXPOVE,ATXPOVD,ATXPIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00100POVS"_$C(30)
  1. S ATXPOV=0 F S ATXPOV=$O(^ICD9("AB",ATXPOV)) Q:ATXPOV="" D
  1. . S ATXPIEN=0 F S ATXPIEN=$O(^ICD9("AB",ATXPOV,ATXPIEN)) Q:'ATXPIEN D
  1. .. Q:$E(ATXPOV,1,1)="["
  1. .. Q:ATXPOV="delete"
  1. .. ;S ATXPOVE=$P($G(^ICD9(ATXPIEN,0)),U)
  1. .. S ATXPOVE=$P($$ICDDX^ICDCODE(ATXPIEN),U,2)
  1. .. ;Q:$P($G(^ICD9(ATXPIEN,0)),U,9)
  1. .. S ATXI=ATXI+1
  1. .. ;S ATXPOVD=$P($G(^ICD9(ATXPIEN,0)),U,3)
  1. .. S ATXPOVD=$P($$ICDDX^ICDCODE(ATXPIEN),U,4)
  1. .. S ^ATXTMP($J,ATXI)=ATXPOVE_"-"_ATXPOVD_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. LAB(ATXRET) ;-- lab tests
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXLAB,ATXI,ATXERR
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080LAB"_$C(30)
  1. S ATXLAB=0 F S ATXLAB=$O(^LAB(60,"B",ATXLAB)) Q:ATXLAB="" D
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXLAB_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. HF(ATXRET) ;-- health factors
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXHF,ATXI,ATXERR,ATXDA,ATXTB,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080HF"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^AUTTHF("B",ATXDA)) Q:ATXDA="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTHF("B",ATXDA,ATXIEN)) Q:'ATXIEN D
  1. .. ;Q:$P($G(^AUTTHF(ATXIEN,0)),U,13)
  1. .. Q:$P($G(^AUTTHF(ATXIEN,0)),U,10)'="F"
  1. .. S ATXHF=$P($G(^AUTTHF(ATXIEN,0)),U)
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXHF_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. CPT(ATXRET) ;-- cpts
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXCPT,ATXI,ATXERR,ATXIEN,ATXDA,ATXCPTD
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050CPT"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^ICPT(ATXDA)) Q:ATXDA="" D
  1. . ;Q:$P($G(^ICPT(ATXDA,0)),U,4) ;inactive
  1. . ;S ATXCPT=$P($G(^ICPT(ATXDA,0)),U)
  1. . S ATXCPT=$P($$CPT^ICPTCOD(ATXDA),U,2)
  1. . ;S ATXCPTD=$P($G(^ICPT(ATXDA,0)),U,2)
  1. . S ATXCPTD=$P($$CPT^ICPTCOD(ATXDA),U,3)
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXCPT_"-"_ATXCPTD_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. ADA(ATXRET) ;-- ada
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXADA,ATXI,ATXERR,ATXIEN,ATXDA,ATXADAD
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050ADA"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^AUTTADA(ATXDA)) Q:ATXDA="" D
  1. . ;Q:$P($G(^AUTTADA(ATXDA,0)),U,8) ;inactive
  1. . S ATXADA=$P($G(^AUTTADA(ATXDA,0)),U)
  1. . S ATXADAD=$P($G(^AUTTADA(ATXDA,0)),U,2)
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXADA_"-"_ATXADAD_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. PRV(ATXRET) ;-- providers
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXPRV,ATXI,ATXERR,ATXIEN,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050PRV"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^VA(200,"B",ATXDA)) Q:ATXDA="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^VA(200,"B",ATXDA,ATXIEN)) Q:'ATXIEN D
  1. .. Q:'$O(^VA(200,"AK.PROVIDER",ATXDA,0))
  1. .. S ATXPRV=$P($G(^VA(200,ATXIEN,0)),U)
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXPRV_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. PRVC(ATXRET) ;-- provider classes
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXPRVC,ATXI,ATXERR,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050PRVC"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^DIC(7,"B",ATXDA)) Q:ATXDA="" D
  1. . ;S ATXPRVC=$P($G(^DIC(7,ATXDA,0)),U)
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXDA_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. LABL(ATXRET) ;-- lab loinc codes
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXLABL,ATXI,ATXERR,ATXIEN,ATXDA,ATXLABD
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050LABL"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^LAB(95.3,"B",ATXDA)) Q:ATXDA="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^LAB(95.3,"B",ATXDA,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXLABL=$P($G(^LAB(95.3,ATXIEN,0)),U)_"-"_$P($G(^LAB(95.3,ATXIEN,0)),U,15)
  1. .. S ATXLABD=$G(^LAB(95.3,ATXIEN,80))
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXLABL_"/"_ATXLABD_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. DENO(ATXRET) ;-- dental op site
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXDENO,ATXI,ATXERR,ATXIEN,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050DENO^T00007IEN"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^ADEOPS("B",ATXDA)) Q:ATXDA="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^ADEOPS("B",ATXDA,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXDENO=$P($G(^ADEOPS(ATXIEN,0)),U)
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXDENO_U_ATXIEN_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. CLN(ATXRET) ;-- clinic stop codes
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXCLN,ATXI,ATXERR,ATXIEN,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050CLN"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^DIC(40.7,"B",ATXDA)) Q:ATXDA="" D
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXDA_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. ICDO(ATXRET) ;-- icd operation
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXICDO,ATXICDD,ATXI,ATXERR,ATXIEN,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050ICDO^T00007IEN"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^ICD0(ATXDA)) Q:'ATXDA D
  1. . ;S ATXICD0=$P($G(^ICD0(ATXDA,0)),U)
  1. . S ATXICD0=$P($$ICDOP^ICDCODE(ATXDA,,,"I"),U,2)
  1. . ;S ATXICDD=$P($G(^ICD0(ATXDA,0)),U,4)
  1. . S ATXICDD=$P($$ICDOP^ICDCODE(ATXDA,,,"I"),U,5)
  1. . S ATXI=ATXI+1
  1. . S ^ATXTMP($J,ATXI)=ATXICD0_"-"_ATXICDD_U_ATXDA_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. COM(ATXRET) ;-- communities
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXCOM,ATXCOMS,ATXI,ATXERR,ATXIEN,ATXDA
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00050CLN^T00007IEN"_$C(30)
  1. S ATXDA=0 F S ATXDA=$O(^AUTTCOM("B",ATXDA)) Q:ATXDA="" D
  1. . S ATXIEN=0 F S ATXIEN=$O(^AUTTCOM("B",ATXDA,ATXIEN)) Q:'ATXIEN D
  1. .. S ATXCOM=$P($G(^AUTTCOM(ATXIEN,0)),U)
  1. .. S ATXCOMS=$S($P($G(^AUTTCOM(ATXIEN,0)),U,3):$P($G(^DIC(5,$P($G(^AUTTCOM(ATXIEN,0)),U,3),0)),U,2),1:"")
  1. .. S ATXI=ATXI+1
  1. .. S ^ATXTMP($J,ATXI)=ATXCOM_"-"_ATXCOMS_U_ATXIEN_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;
  1. MSR(ATXRET) ;-- measurement
  1. S X="MERR^ATXGU",@^%ZOSF("TRAP")
  1. N ATXMST,ATXMSA,ATXMS,ATXMSTE,ATXI,ATXERR,ATXIEN
  1. K ^ATXTMP($J)
  1. S ATXRET="^ATXTMP("_$J_")"
  1. S ATXI=0
  1. S ATXERR=""
  1. S ^ATXTMP($J,ATXI)="T00080MSR"_$C(30)
  1. S ATXMST=0 F S ATXMST=$O(^AUTTMSR(ATXMST)) Q:'ATXMST D
  1. . S ATXI=ATXI+1
  1. . S ATXMSA=$P($G(^AUTTMSR(ATXMST,0)),U)
  1. . S ATXMS=$P($G(^AUTTMSR(ATXMST,0)),U,2)
  1. . S ^ATXTMP($J,ATXI)=ATXMS_$C(30)
  1. S ^ATXTMP($J,ATXI+1)=$C(31)_$G(ATXERR)
  1. Q
  1. ;