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

BGPGT.m

Go to the documentation of this file.
  1. BGPGT ; IHS/CMI/LAB - BGPG Gui CRS Tables 2/2/2005 10:24:22 AM ;
  1. ;;7.0;IHS CLINICAL REPORTING;;JAN 24, 2007
  1. ;
  1. ;
  1. ;
  1. GETTAX(RETVAL,BGPSTR) ;-- get taxonomies based on user selection
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPDA,BGPI,P,BGPPKG,BGPPKGI,BGPI
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPPKG=$P(BGPSTR,P)
  1. S BGPPKGI=$O(^DIC(9.4,"C",BGPPKG,0))
  1. S ^BGPTMP($J,BGPI)="T00080TAXONOMIES"_$C(30)
  1. S BGPDA=0 F S BGPDA=$O(^ATXAX("APKG",BGPPKGI,BGPDA)) Q:'BGPDA D
  1. . N BGPTAX,BGPRO,BGPFL
  1. . S BGPTAX=$P($G(^ATXAX(BGPDA,0)),U)
  1. . S BGPRO=$S($P($G(^ATXAX(BGPDA,0)),U,22):"Read Only",1:"Editable")
  1. . S BGPFL=$P($G(^ATXAX(BGPDA,0)),U,15)
  1. . Q:'$G(BGPFL)
  1. . S ^BGPTMP("TAX",$J,BGPFL,BGPTAX)=BGPRO_U_$S(BGPFL=50:"Med",1:"Tax")
  1. S BGPDA=0 F S BGPDA=$O(^ATXLAB("APKG",BGPPKGI,BGPDA)) Q:'BGPDA D
  1. . N BGPTAX,BGPRO,BGPFL
  1. . S BGPTAX=$P($G(^ATXLAB(BGPDA,0)),U)
  1. . S BGPRO=$S($P($G(^ATXLAB(BGPDA,0)),U,22):"Read Only",1:"Editable")
  1. . S BGPFL=$P($G(^ATXLAB(BGPDA,0)),U,9)
  1. . S ^BGPTMP("TAX",$J,BGPFL,BGPTAX)=BGPRO_U_"Lab"
  1. S BGPDA=0 F S BGPDA=$O(^BGPTMP("TAX",$J,BGPDA)) Q:BGPDA="" D
  1. . N BGPIEN
  1. . S BGPIEN=0 F S BGPIEN=$O(^BGPTMP("TAX",$J,BGPDA,BGPIEN)) Q:BGPIEN="" D
  1. .. S BGPI=BGPI+1
  1. .. S BGPRO=$G(^BGPTMP("TAX",$J,BGPDA,BGPIEN))
  1. .. S ^BGPTMP($J,BGPI)=BGPIEN_"("_$P(BGPRO,U)_"/"_$P(BGPRO,U,2)_"/"_BGPDA_")"_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. K ^BGPTMP("TAX",$J)
  1. Q
  1. ;
  1. TAX(RETVAL,BGPSTR) ;-- generic taxonomy table
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPRFL,BGPI,BGPERR,BGPIEN,BGPTAXE,BGPTAX,BGPDA,BGPNONC,BGPXRF
  1. N BGPGL,BGPGRF,BGPP
  1. S P="|"
  1. I $P(BGPSTR,P)="Lab" D LABTAX(.RETVAL,.BGPSTR) Q
  1. I $P(BGPSTR,P)="LAB" D LTAX(.RETVAL) Q
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPERR=""
  1. S ^BGPTMP($J,BGPI)="T00080TAXONOMY"_$C(30)
  1. I $P(BGPSTR,P)="MED" D MEDBLD
  1. F BGPP=3:1 S BGPTAXE=$P(BGPSTR,P,BGPP) Q:$G(BGPTAXE)="" D
  1. . Q:$G(BGPTAXE)=""
  1. . ;S BGPTAXE=$P(BGPSTR,P)
  1. . S BGPTAX=$O(^ATXAX("B",BGPTAXE,0))
  1. . Q:'$G(BGPTAX)
  1. . S BGPNONC=$P($G(^ATXAX(BGPTAX,0)),U,13)
  1. . S BGPXRF=$P($G(^ATXAX(BGPTAX,0)),U,14)
  1. . S BGPFL=$P($G(^ATXAX(BGPTAX,0)),U,15)
  1. . ;I $G(BGPXRF)="" S BGPXRF="B"
  1. . I BGPFL=80 S BGPXRF="BA" ;icd diagnosis x ref
  1. . S BGPGL=$G(^DIC(BGPFL,0,"GL"))
  1. . S BGPDA=0 F S BGPDA=$O(^ATXAX(BGPTAX,21,BGPDA)) Q:'BGPDA D
  1. .. N BGPL,BGPH
  1. .. S BGPI=BGPI+1
  1. .. S BGPL=$P($G(^ATXAX(BGPTAX,21,BGPDA,0)),U)
  1. .. S BGPH=$P($G(^ATXAX(BGPTAX,21,BGPDA,0)),U,2)
  1. .. I (BGPL=BGPH)!($G(BGPH)="") D Q
  1. ... I $G(BGPXRF)="" D Q
  1. .... S BGPGRF=BGPGL_""""_BGPL_""""_")"
  1. .... S ^BGPTMP($J,BGPI)=$P($G(@BGPGRF@(0)),U)_$C(30)
  1. ... S ^BGPTMP($J,BGPI)=BGPL_$C(30)
  1. .. S BGPGRF=BGPGL_""""_BGPXRF_""")"
  1. .. N BGPIEN
  1. .. S BGPIEN=$O(@BGPGRF@(BGPL),-1)
  1. .. F S BGPIEN=$O(@BGPGRF@(BGPIEN)) Q:BGPIEN>BGPH D
  1. ... S BGPI=BGPI+1
  1. ... S ^BGPTMP($J,BGPI)=BGPIEN_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. LABTAX(RETVAL,BGPSTR) ;-- return the lab taxonomy
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPRFL,BGPI,BGPERR,BGPIEN,BGPTAXE,BGPTAX,BGPDA,BGPNONC,BGPXRF
  1. N BGPGL,BGPGRF,BGPP
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPERR=""
  1. S ^BGPTMP($J,BGPI)="T00080LABTAXONOMY"_$C(30)
  1. F BGPP=3:1 S BGPTAXE=$P(BGPSTR,P,BGPP) Q:$G(BGPTAXE)="" D
  1. . Q:$G(BGPTAXE)=""
  1. . ;S BGPTAXE=$P(BGPSTR,P)
  1. . S BGPTAX=$O(^ATXLAB("B",BGPTAXE,0))
  1. . Q:'$G(BGPTAX)
  1. . S BGPNONC=$P($G(^ATXLAB(BGPTAX,0)),U,13)
  1. . S BGPXRF=$P($G(^ATXLAB(BGPTAX,0)),U,14)
  1. . S BGPFL=60
  1. . S BGPGL=$G(^DIC(BGPFL,0,"GL"))
  1. . S BGPDA=0 F S BGPDA=$O(^ATXLAB(BGPTAX,21,BGPDA)) Q:'BGPDA D
  1. .. N BGPL,BGPH
  1. .. S BGPI=BGPI+1
  1. .. S BGPL=$P($G(^ATXLAB(BGPTAX,21,BGPDA,0)),U)
  1. .. S BGPH=$P($G(^ATXLAB(BGPTAX,21,BGPDA,0)),U,2)
  1. .. I (BGPL=BGPH)!($G(BGPH)="") D Q
  1. ... I $G(BGPXRF)="" D Q
  1. .... S BGPGRF=BGPGL_""""_BGPL_""""_")"
  1. .... S ^BGPTMP($J,BGPI)=$P($G(@BGPGRF@(0)),U)_$C(30)
  1. ... S ^BGPTMP($J,BGPI)=BGPL_$C(30)
  1. .. S BGPGRF=BGPGL_""""_BGPXRF_""")"
  1. .. N BGPIEN
  1. .. S BGPIEN=$O(@BGPGRF@(BGPL),-1)
  1. .. F S BGPIEN=$O(@BGPGRF@(BGPIEN)) Q:BGPIEN>BGPH D
  1. ... S BGPI=BGPI+1
  1. ... S ^BGPTMP($J,BGPI)=BGPIEN_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. LTAX(RETVAL) ;-- generic lab taxonomy table
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPRFL,BGPI,BGPERR,BGPIEN,BGPTAXE,BGPTAX,BGPDA,BGPNONC,BGPXRF
  1. N BGPGL,BGPGRF,BGPP,BGPPKG,BGPTDA,BGPPKGI
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPPKG=$P(BGPSTR,P,2)
  1. S BGPPKGI=$O(^DIC(9.4,"C",BGPPKG,0))
  1. S ^BGPTMP($J,BGPI)="T00080LABTAXONOMY"_$C(30)
  1. S BGPTAX=0 F S BGPTAX=$O(^ATXLAB("APKG",BGPPKGI,BGPTAX)) Q:'BGPTAX D
  1. . ;S BGPTAX=0 F S BGPTAX=$O(^ATXLAB(BGPTAX)) Q:'BGPTAX D
  1. . ;S BGPTAX=$P($G(^ATXLAB(BGPP,0)),U)
  1. . ;Q:$E($P($G(^ATXLAB(BGPTAX,0)),U),1,2)'="DM"
  1. . ;S BGPTAXE=$P(BGPSTR,P)
  1. . ;S BGPTAX=$O(^ATXLAB("B",BGPTAXE,0))
  1. . ;Q:'$G(BGPTAX)
  1. . S BGPXRF=$P($G(^ATXLAB(BGPTAX,0)),U,8)
  1. . I $G(BGPXRF)="" S BGPXRF="B"
  1. . S BGPFL=$P($G(^ATXLAB(BGPTAX,0)),U,9)
  1. . S BGPGL=$G(^DIC(BGPFL,0,"GL"))
  1. . S BGPDA=0 F S BGPDA=$O(^ATXLAB(BGPTAX,21,BGPDA)) Q:'BGPDA D
  1. .. N BGPL,BGPH
  1. .. S BGPI=BGPI+1
  1. .. S BGPL=$P($G(^ATXLAB(BGPTAX,21,BGPDA,0)),U)
  1. .. S BGPGRF=BGPGL_""""_BGPL_""""_")"
  1. .. N BGPIEN
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=$P($G(@BGPGRF@(0)),U)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. MEDBLD ;-- setup BGPSTR for medication taxonomy
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPTDA,BGPI,BGPPKG,BGPPKGI
  1. S BGPI=1
  1. S BGPPKG=$P(BGPSTR,P,2)
  1. S BGPPKGI=$O(^DIC(9.4,"C",BGPPKG,0))
  1. S BGPTDA=0 F S BGPTDA=$O(^ATXAX(BGPTDA)) Q:'BGPTDA D
  1. . ;S BGPTDA=0 F S BGPTDA=$O(^ATXAX(BGPTDA)) Q:'BGPTDA D
  1. . ;Q:$E($P($G(^ATXAX(BGPTDA,0)),U),1,2)'="DM"
  1. . Q:$P($G(^ATXAX(BGPTDA,0)),U,15)'=50
  1. . S BGPI=BGPI+1
  1. . S $P(BGPSTR,P,BGPI)=$P($G(^ATXAX(BGPTDA,0)),U)
  1. Q
  1. ;
  1. GETTAXN(RETVAL,BGPSTR) ;-- get taxonomies based on user selection
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPDA,BGPI,P,BGPPKG,BGPPKGI,BGPI
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPPKG=$P(BGPSTR,P)
  1. S BGPPKGI=$O(^DIC(9.4,"C",BGPPKG,0))
  1. S ^BGPTMP($J,BGPI)="T00080TAXONOMIES"_$C(30)
  1. S BGPDA=0 F S BGPDA=$O(^ATXAX("APKG",BGPPKGI,BGPDA)) Q:'BGPDA D
  1. . N BGPTAX,BGPRO,BGPFL
  1. . S BGPTAX=$P($G(^ATXAX(BGPDA,0)),U)
  1. . S BGPRO=$S($P($G(^ATXAX(BGPDA,0)),U,22):"Read Only",1:"Editable")
  1. . S BGPFL=$P($G(^ATXAX(BGPDA,0)),U,15)
  1. . S ^BGPTMP("TAX",$J,BGPFL,BGPTAX)=BGPRO_U_$S(BGPFL=50:"Med",1:"Tax")
  1. S BGPDA=0 F S BGPDA=$O(^ATXLAB("APKG",BGPPKGI,BGPDA)) Q:'BGPDA D
  1. . N BGPTAX,BGPRO,BGPFL
  1. . S BGPTAX=$P($G(^ATXLAB(BGPDA,0)),U)
  1. . S BGPRO=$S($P($G(^ATXLAB(BGPDA,0)),U,22):"Read Only",1:"Editable")
  1. . S BGPFL=$P($G(^ATXLAB(BGPDA,0)),U,9)
  1. . S ^BGPTMP("TAX",$J,BGPFL,BGPTAX)=BGPRO_U_"Lab"
  1. S BGPDA=0 F S BGPDA=$O(^BGPTMP("TAX",$J,BGPDA)) Q:BGPDA="" D
  1. . N BGPIEN
  1. . S BGPIEN=0 F S BGPIEN=$O(^BGPTMP("TAX",$J,BGPDA,BGPIEN)) Q:BGPIEN="" D
  1. .. S BGPI=BGPI+1
  1. .. S BGPRO=$G(^BGPTMP("TAX",$J,BGPDA,BGPIEN))
  1. .. S ^BGPTMP($J,BGPI)=BGPIEN_"("_$P(BGPRO,U)_"/"_$P(BGPRO,U,2)_"/"_BGPDA_")"_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. K ^BGPTMP("TAX",$J)
  1. Q
  1. ;
  1. GI(RETVAL) ;-- get GPRA indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. S X=0 F S X=$O(^BGPINDV("AO",X)) Q:X'=+X D
  1. . S Y=0 F S Y=$O(^BGPINDV("AO",X,Y)) Q:Y'=+Y D
  1. .. Q:$P(^BGPINDV(Y,0),U,7)'=1
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=Y_U_$P($G(^BGPINDV(Y,0)),U,4)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. GSI(RETVAL,BGPSTR) ;-- get sub indicator based on passed in indicator
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPSIND,BGPIND,BGPI,X
  1. S P="|"
  1. S BGPIND=$P(BGPSTR,P)
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Sub Indicator"_$C(30)
  1. S X=0 F S X=$O(^BGPVNPL("B",BGPIND,X)) Q:'X D
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=X_U_$P($G(^BGPVNPL(X,0)),U,3)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. GIALL(RETVAL) ;-- get all GPRA indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. S X=0 F S X=$O(^BGPINDV("AO",X)) Q:X'=+X D
  1. . S Y=0 F S Y=$O(^BGPINDV("AO",X,Y)) Q:Y'=+Y D
  1. .. ;Q:$P(^BGPINDV(Y,0),U,7)'=1
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=Y_U_$P($G(^BGPINDV(Y,0)),U,4)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. ECALL(RETVAL) ;-- get all elder care indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. S X=0 F S X=$O(^BGPELIV("AO",X)) Q:X'=+X D
  1. . S Y=0 F S Y=$O(^BGPELIV("AO",X,Y)) Q:Y'=+Y D
  1. .. ;Q:$P(^BGPINDV(Y,0),U,7)'=1
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=Y_U_$P($G(^BGPELIV(Y,0)),U,4)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. PATLST(RETVAL,BGPSTR) ;-- get all GPRA indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z,P,BGPIND
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. N I
  1. F I=2:1 D Q:$P(BGPSTR,P,I)=""
  1. . Q:$P(BGPSTR,P,I)=""
  1. . S BGPINDI=$P(BGPSTR,P,I)
  1. . S BGPIND(BGPINDI)=""
  1. S X=0 F S X=$O(BGPIND(X)) Q:X'=+X D
  1. . Q:$P(^BGPINDV(X,0),U,5)=""
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=X_U_$P($G(^BGPINDV(X,0)),U,4)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. EPATLST(RETVAL,BGPSTR) ;-- get all GPRA indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z,P,BGPIND
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. N I
  1. F I=2:1 D Q:$P(BGPSTR,P,I)=""
  1. . Q:$P(BGPSTR,P,I)=""
  1. . S BGPINDI=$P(BGPSTR,P,I)
  1. . S BGPIND(BGPINDI)=""
  1. S X=0 F S X=$O(BGPIND(X)) Q:X'=+X D
  1. . Q:$P(^BGPELIV(X,0),U,5)=""
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=X_U_$P($G(^BGPELIV(X,0)),U,5)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. COM(RETVAL,BGPSTR) ;-- get indicators based on user selection
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z,BGPLP,XREF
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. I BGPSTR="D" D
  1. . S XREF="ADM"
  1. I BGPSTR="C" D
  1. . S XREF="ACARD"
  1. I BGPSTR="W" D
  1. . S XREF="AWH"
  1. I BGPSTR="E" D
  1. . S XREF="AEL"
  1. S BGPLP="^BGPINDVC("""_XREF_""",1)"
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. K ^TMP($J,"BGPG")
  1. S X=0 F S X=$O(@BGPLP@(X)) Q:X'=+X D
  1. . ;Q:$P(^BGPINDV(Y,0),U,7)'=1
  1. . S ^TMP($J,"BGPG",$P($G(^BGPINDVC(X,0)),U))=""
  1. S Y=0 F S Y=$O(^TMP($J,"BGPG",Y)) Q:'Y D
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=Y_U_$P($G(^BGPINDV(Y,0)),U,5)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. CMSIND(RETVAL) ;-- get CMS indicators
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,X,Y,Z
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Indicator"_$C(30)
  1. S X=0 F S X=$O(^BGPCMSIF("AO",X)) Q:X'=+X D
  1. . S Y=0 F S Y=$O(^BGPCMSIF("AO",X,Y)) Q:Y'=+Y D
  1. .. ;Q:$P(^BGPINDV(Y,0),U,7)'=1
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=Y_U_$P($G(^BGPCMSIF(Y,0)),U,4)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;