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

VBECA1B.m

Go to the documentation of this file.
  1. VBECA1B ;HIOFO/BNT - VBECS Patient Data APIs ; 01/21/05 8:30am
  1. ;;2.0;VBEC;;Jun 05, 2015;Build 4
  1. ; Note: This routine supports data exchange with an FDA registered
  1. ; medical device. As such, it may not be changed in any way without
  1. ; prior written approval from the medical device manufacturer.
  1. ;
  1. ; Integration Agreements:
  1. ; Reference to ^DIC supported by IA #10006
  1. ; Reference to file 200 supported by IA #10035
  1. ; Reference to $$CHARCHK^XOBVLIB supported by IA #4090
  1. ; Reference to EN^MXMLPRSE supported by IA #4149
  1. ; Reference to ^DPT( supported by IA #10035
  1. ;
  1. QUIT
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4624
  1. ; ----------------------------------------------------------
  1. ABORH(DFN,VBECTYP) ; Returns VBECS Patient ABO Group and Rh Type
  1. ; Input: DFN = PATIENT file (#2) IEN
  1. ; VBECTYP = "ABORH" or "ABO" or "RH" as needed.
  1. IF '$D(^DPT(DFN,0)) S ARR("ERROR")="1^Invalid or Missing Patient Identifier" QUIT ARR("ERROR")
  1. IF VBECTYP'="ABORH"&(VBECTYP'="ABO")&(VBECTYP'="RH") S ARR("ERROR")="1^Invalid Input" QUIT ARR("ERROR")
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J),ARR1
  1. D INITV^VBECRPCC("VBECS Patient ABO_RH")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q ARR("ERROR")
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. I $D(@VBECY@("ERROR")) SET ARR("ERROR")="1^"_@VBECY@("ERROR") QUIT ARR("ERROR")
  1. D ABOEN(.ARR,VBECY)
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J),ARR1
  1. ;K OPTION,VBECABHC,VBECLN,VBECMSBC,VBECPRMS,VBECRES
  1. K VBECSRC,VBECSTAT,VBECTRHC,VBECTSTC,VBECUNA,VBECUNC,VBECUND
  1. K VBECUNS,VBECY
  1. Q $G(@VBECTYP)
  1. ABOEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(ARR1("API"))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND)=0
  1. D ABOSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. Q
  1. ABOSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="ABOSTELE^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4626
  1. ; ----------------------------------------------------------
  1. TRRX(DFN) ; Returns VBECS Patient Transfusion Reaction History
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J)
  1. D INITV^VBECRPCC("VBECS Patient TRRX")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. D TRRXEN(.ARR,VBECY)
  1. I '$D(ARR("TRRX")) S ARR("TRRX")=""
  1. Q
  1. ;
  1. TRRXEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(^TMP("VBECA1B",$J))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND)=0
  1. D TRRXSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. M ARR("TRRX")=@VBECRES
  1. K VBECABHC,VBECLN,VBECMSBC,VBECPRMS,VBECRES,VBECSRC,VBECSTAT
  1. K VBECTRHC,VBECTSTC,VBECUNA,VBECUNC,VBECUND,VBECUNS,VBECY
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J)
  1. Q
  1. ;
  1. TRRXSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="TRSTELE^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4625
  1. ; ----------------------------------------------------------
  1. ABID(DFN) ; Returns VBECS Patient Antibodies Identified
  1. D INITV^VBECRPCC("VBECS Patient ABID")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. K @VBECY,@VBECPRMS("RESULTS")
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. D ABIDEN(.ARR,VBECY)
  1. ;K @VBECY,@VBECPRMS("RESULTS")
  1. K ARR1,ATR,ATR,CBK,CNT,DFN,DOC,ELE,OPTION,TEXT,VBECABHC,VBECLN
  1. K VBECMSBC,VBECPRMS,VBECRES,VBECSRC,VBECSTAT,VBECTRHC,VBECTSTC
  1. K VBECUNA,VBECUNC,VBECUND,VBECUNS,VBECY
  1. Q
  1. ;
  1. ABIDEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(^TMP("VBECA1B",$J))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND)=0
  1. D ABSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. M ARR("ABID")=@VBECRES
  1. Q
  1. ;
  1. ABSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="ABSTELE^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4620
  1. ; ----------------------------------------------------------
  1. AVUNIT(TMPLOC,DFN) ; Returns VBECS Patient Available Units
  1. ; Input variable;
  1. ; TMPLOC = Node in ^TMP to be used for output data array
  1. ; DFN = Internal number of patient
  1. ;
  1. ; Output is data array:
  1. ; ^TMP(TMPLOC,$J,n)
  1. ;
  1. Q:$G(TMPLOC)=""
  1. Q:'$G(DFN)
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J),^TMP(TMPLOC,$J)
  1. D INITV^VBECRPCC("VBECS Patient Available Units")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. D AVUEN(.ARR,VBECY)
  1. I '$D(ARR("UNIT")) S ARR("UNIT")=""
  1. M ^TMP(TMPLOC,$J)=ARR
  1. K ARR
  1. Q
  1. AVUEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(^TMP("VBECA1B",$J))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND)=0
  1. D AVUSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. M ARR=@VBECRES@("UNIT",$J)
  1. K VBECABHC,VBECLN,VBECMSBC,VBECPRMS,VBECRES,VBECSRC,VBECSTAT
  1. K VBECTRHC,VBECTSTC,VBECUNA,VBECUNC,VBECUND,VBECUNS,VBECY
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J),ARR1
  1. Q
  1. AVUSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="AVUSTELE^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4621
  1. ; ----------------------------------------------------------
  1. TRAN(DFN) ; Returns VBECS Patient Transfusion History
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J)
  1. D INITV^VBECRPCC("VBECS Patient Transfusion History")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. D TRANEN(.ARR,VBECY)
  1. Q
  1. ;
  1. TRANEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(^TMP("VBECA1B",$J))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND)=0
  1. D TRANSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. I '$D(@VBECRES@("TRAN")) S ARR="" Q
  1. M ARR=@VBECRES@("TRAN")
  1. K VBECABHC,VBECLN,VBECMSBC,VBECPRMS,VBECRES,VBECSRC,VBECSTAT
  1. K VBECTRHC,VBECTSTC,VBECUNA,VBECUNC,VBECUND,VBECUNS,VBECY
  1. K ^TMP("VBECAPI",$J),^TMP("VBECAPI1",$J),^TMP("VBECA1B",$J)
  1. Q
  1. ;
  1. TRANSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="TRANSTEL^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q
  1. ;
  1. ; ----------------------------------------------------------
  1. ; Private Method supports IA 4623
  1. ; ----------------------------------------------------------
  1. DFN(DFN) ; Returns VBECS Patient Reports for CPRS
  1. D INITV^VBECRPCC("VBECS Patient Report")
  1. S VBECY="^TMP(""VBECAPI"",$J)",VBECPRMS("RESULTS")="^TMP(""VBECAPI1"",$J)"
  1. K @VBECY,@VBECPRMS("RESULTS")
  1. IF +VBECPRMS("ERROR") S ARR("ERROR")=VBECPRMS("ERROR") Q
  1. SET VBECPRMS("PARAMS",1,"TYPE")="STRING"
  1. SET VBECPRMS("PARAMS",1,"VALUE")=$$CHARCHK^XOBVLIB(DFN)
  1. S VBECSTAT=$$EXECUTE^VBECRPCC(.VBECPRMS)
  1. D PARSE^VBECRPC1(.VBECPRMS,VBECY)
  1. D RPTEN(.ARR,VBECY)
  1. ;K @VBECY,@VBECPRMS("RESULTS")
  1. K VBECABHC,VBECLN,VBECMSBC,VBECPRMS,VBECRES,VBECSRC,VBECSTAT
  1. K VBECTRHC,VBECTSTC,VBECUNA,VBECUNC,VBECUND,VBECUNS,VBECY
  1. Q
  1. RPTEN(ARR,DOC) ;
  1. N CBK,CNT
  1. S OPTION="",VBECRES=$NA(^TMP("VBDATA",$J))
  1. K @VBECRES
  1. S (VBECLN,VBECTRHC,VBECABHC,VBECTSTC,VBECMSBC,VBECSRC,VBECUNC,VBECUNS,VBECUNA,VBECUND,VBECSTC,VBECCRC)=0
  1. D RPTSET(.CBK)
  1. D EN^MXMLPRSE(DOC,.CBK,.OPTION)
  1. M ARR=@VBECRES
  1. Q
  1. RPTSET(CBK) ;
  1. K CBK
  1. S CBK("STARTELEMENT")="RPTSTELE^VBECA1B1"
  1. S CBK("ENDELEMENT")="ENELE^VBECA1B1"
  1. S CBK("CHARACTERS")="CHAR^VBECA1B1"
  1. Q