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

PXKVST.m

Go to the documentation of this file.
  1. PXKVST ;ISL/ARS - SET UP VISIT FIELDS BEFORE CALLING OFF TO VSIT ;08/20/2023
  1. ;;1.0;PCE PATIENT CARE ENCOUNTER;**56,111,130,164,168,211,238**;Aug 12, 1996;Build 3
  1. VSIT ;ENTRY POINT
  1. ;COMMON SECTION
  1. N PXKAFTR,PXKAFT8,PXKAFT15,PXKAFT21,PXKAF811,PXKAF812,PXVSTIEN
  1. N VSIT,VSITPKG
  1. S PXKAFTR=$S($G(^TMP("PXK",$J,"VST",1,0,"AFTER"))]"":^TMP("PXK",$J,"VST",1,0,"AFTER"),1:"")
  1. Q:PXKAFTR=""
  1. S PXKAFT21=$S($G(^TMP("PXK",$J,"VST",1,21,"AFTER"))]"":^TMP("PXK",$J,"VST",1,21,"AFTER"),1:"")
  1. S PXKAFT15=$S($G(^TMP("PXK",$J,"VST",1,150,"AFTER"))]"":^TMP("PXK",$J,"VST",1,150,"AFTER"),1:"")
  1. S PXKAFT8=$S($G(^TMP("PXK",$J,"VST",1,800,"AFTER"))]"":^TMP("PXK",$J,"VST",1,800,"AFTER"),1:"")
  1. S PXKAF811=$S($G(^TMP("PXK",$J,"VST",1,811,"AFTER"))]"":^TMP("PXK",$J,"VST",1,811,"AFTER"),1:"")
  1. S PXKAF812=$S($G(^TMP("PXK",$J,"VST",1,812,"AFTER"))]"":^TMP("PXK",$J,"VST",1,812,"AFTER"),1:"")
  1. S VSIT("IEN")=$S(^TMP("PXK",$J,"VST",1,"IEN")]"":^TMP("PXK",$J,"VST",1,"IEN"),1:"")
  1. I VSIT("IEN")="" S PXKAFTR=$TR(PXKAFTR,"@"),PXKAFT8=$TR(PXKAFT8,"@")
  1. S VSIT("VDT")=$S($P(PXKAFTR,"^",1)]"":$P(PXKAFTR,"^",1),1:"NOW")
  1. S VSIT("TYP")=$P(PXKAFTR,"^",3)
  1. S VSIT("INS")=$P(PXKAFTR,"^",6)
  1. S VSIT("OUT")=$P(PXKAFT21,"^")
  1. S VSIT("PAT")=$P(PXKAFTR,"^",5)
  1. S VSIT("SVC")=$P(PXKAFTR,"^",7)
  1. S VSIT("DSS")=$P(PXKAFTR,"^",8)
  1. S VSIT("LNK")=$P(PXKAFTR,"^",12)
  1. S VSIT("WIA")=$P(PXKAFTR,"^",16)
  1. S VSIT("LOS")=$P(PXKAFTR,"^",17)
  1. S VSIT("COD")=$P(PXKAFTR,"^",18)
  1. S:$P(PXKAFTR,"^",21)]"" VSIT("ELG")=$P(PXKAFTR,"^",21)
  1. S VSIT("LOC")=$P(PXKAFTR,"^",22)
  1. S VSIT("USR")=$P(PXKAFTR,"^",23)
  1. S VSIT("ACT")=$P(PXKAFTR,"^",26) ;PX*1.0*164
  1. S:$P(PXKAFT8,"^",1)]"" VSIT("SC")=$P(PXKAFT8,"^",1)
  1. S:$P(PXKAFT8,"^",2)]"" VSIT("AO")=$P(PXKAFT8,"^",2)
  1. S:$P(PXKAFT8,"^",3)]"" VSIT("IR")=$P(PXKAFT8,"^",3)
  1. S:$P(PXKAFT8,"^",4)]"" VSIT("EC")=$P(PXKAFT8,"^",4)
  1. S:$P(PXKAFT8,"^",5)]"" VSIT("MST")=$P(PXKAFT8,"^",5) ;added 6/17/98 for MST enhancement
  1. ;PX*1*111 - added for HNC enhancement
  1. S:$P(PXKAFT8,"^",6)]"" VSIT("HNC")=$P(PXKAFT8,"^",6)
  1. S:$P(PXKAFT8,"^",7)]"" VSIT("CV")=$P(PXKAFT8,"^",7)
  1. S:$P(PXKAFT8,"^",8)]"" VSIT("SHAD")=$P(PXKAFT8,"^",8)
  1. S:$P(PXKAFT15,"^",1)]"" VSIT("SVP")=$P(PXKAFT15,"^",1)
  1. S:$P(PXKAFT15,"^",2)]"" VSIT("IO")=$P(PXKAFT15,"^",2)
  1. S:$P(PXKAFT15,"^",3)]"" VSIT("PRI")=$P(PXKAFT15,"^",3)
  1. S:$P(PXKAF812,"^",2)]"" VSIT("PKG")=$P(PXKAF812,"^",2)
  1. S:$P(PXKAF812,"^",3)]"" VSIT("SOR")=$P(PXKAF812,"^",3)
  1. S:PXKAF811]"" VSIT("COM")=PXKAF811
  1. S VSITPKG=$G(VSIT("PKG"))
  1. I $G(VSIT("PRI"))="",VSIT("SVC")="E"!($P($G(^SC(+VSIT("LOC"),0)),"^",7)=VSIT("DSS")) S VSIT("PRI")="P"
  1. ;If ^TMP("PXK",$J,"VISITCREATE")="F" then in CALL^PXAIVST, FINDVISIT^PXUTLVST could not find an existing visit so
  1. ;force the creation of a new one.
  1. I $G(^TMP("PXK",$J,"VISITCREATE"))="F" S VSIT(0)=$S(VSIT("SVC")="E":"F",1:"EF")
  1. I '$D(VSIT(0)) S VSIT(0)=$S(VSIT("SVC")="E":"D0NM",1:"D0NEM")
  1. ;
  1. ;CALL FOR VSIT
  1. D ^VSIT
  1. I '$D(VSIT("IEN"))#2 Q
  1. S PXVSTIEN=$P(VSIT("IEN"),"^",1)
  1. S ^TMP("PXK",$J,"VST",1,"IEN")=PXVSTIEN
  1. I PXVSTIEN<1 Q
  1. D VIEN(PXVSTIEN)
  1. I $P(VSIT("IEN"),"^",3)'=1 D
  1. .S ^TMP("PXK",$J,"VST",1,0,"BEFORE")=^AUPNVSIT(PXVSTIEN,0)
  1. .S ^TMP("PXK",$J,"VST",1,21,"BEFORE")=$G(^AUPNVSIT(PXVSTIEN,21))
  1. .S ^TMP("PXK",$J,"VST",1,150,"BEFORE")=$G(^AUPNVSIT(PXVSTIEN,150))
  1. .S ^TMP("PXK",$J,"VST",1,800,"BEFORE")=$G(^AUPNVSIT(PXVSTIEN,800))
  1. .S ^TMP("PXK",$J,"VST",1,811,"BEFORE")=$G(^AUPNVSIT(PXVSTIEN,811))
  1. .S ^TMP("PXK",$J,"VST",1,812,"BEFORE")=$G(^AUPNVSIT(PXVSTIEN,812))
  1. .S $P(^TMP("PXK",$J,"VST",1,0,"AFTER"),"^",3)=$P(^AUPNVSIT(PXVSTIEN,0),"^",3)
  1. .S $P(^TMP("PXK",$J,"VST",1,0,"AFTER"),"^",7)=$P(^AUPNVSIT(PXVSTIEN,0),"^",7)
  1. I $P(VSIT("IEN"),"^",3)=1 D
  1. .S ^TMP("PXK",$J,"VST",1,0,"AFTER")=^AUPNVSIT(PXVSTIEN,0)
  1. .S ^TMP("PXK",$J,"VST",1,21,"AFTER")=$G(^AUPNVSIT(PXVSTIEN,21))
  1. .S ^TMP("PXK",$J,"VST",1,150,"AFTER")=$G(^AUPNVSIT(PXVSTIEN,150))
  1. .S ^TMP("PXK",$J,"VST",1,800,"AFTER")=$G(^AUPNVSIT(PXVSTIEN,800))
  1. .S ^TMP("PXK",$J,"VST",1,811,"AFTER")=$G(^AUPNVSIT(PXVSTIEN,811))
  1. .S ^TMP("PXK",$J,"VST",1,812,"AFTER")=$G(^AUPNVSIT(PXVSTIEN,812))
  1. .S ^TMP("PXK",$J,"VST",1,0,"BEFORE")=""
  1. .S ^TMP("PXK",$J,"VST",1,21,"BEFORE")=""
  1. .S ^TMP("PXK",$J,"VST",1,150,"BEFORE")=""
  1. .S ^TMP("PXK",$J,"VST",1,800,"BEFORE")=""
  1. .S ^TMP("PXK",$J,"VST",1,811,"BEFORE")=""
  1. .S ^TMP("PXK",$J,"VST",1,812,"BEFORE")=""
  1. .I $D(PXELAP)#2 D
  1. ..S ^TMP("PXKCO",$J,PXVSTIEN,"VST",PXVSTIEN,"ELAP","BEFORE")=""
  1. ..S ^TMP("PXKCO",$J,PXVSTIEN,"VST",PXVSTIEN,"ELAP","AFTER")=PXELAP
  1. K VSIT
  1. Q
  1. ;
  1. VIEN(VIEN) ;Put the Visit IEN in the AFTERs for all of the V-Files
  1. N PXCAINX1,PXCAINX2
  1. S PXCAINX1=""
  1. F S PXCAINX1=$O(^TMP("PXK",$J,PXCAINX1)) Q:PXCAINX1']"" D:"^VST^SOR^"'[PXCAINX1
  1. . S PXCAINX2=""
  1. . F S PXCAINX2=$O(^TMP("PXK",$J,PXCAINX1,PXCAINX2)) Q:PXCAINX2']"" D
  1. .. I $D(^TMP("PXK",$J,PXCAINX1,PXCAINX2,0,"AFTER"))=1 S $P(^TMP("PXK",$J,PXCAINX1,PXCAINX2,0,"AFTER"),"^",3)=VIEN
  1. Q
  1. ;