PXAIHF ;ISL/PKR - Set the HEALTH FACTOR nodes. ;12/18/97 ;;1.0;PCE PATIENT CARE ENCOUNTER;**45**;Aug 12, 1996 ; HF ;Main entry point. ; K PXAERR S PXAERR(8)=PXAK S PXAERR(7)="HEALTH FACTOR" ; N IND,PXAA S IND="" F S IND=$O(@PXADATA@("HEALTH FACTOR",PXAK,IND)) Q:IND="" D . S PXAA(IND)=@PXADATA@("HEALTH FACTOR",PXAK,IND) ; ;Validate the data. N STOP D VAL^PXAIHFV I $G(STOP) Q ; SETVARA ;Set the after visit variables. N AFTER0,AFTER12,AFTER811,AFTER812 S $P(AFTER0,U,1)=$G(PXAA("HEALTH FACTOR")) I $G(PXAA("DELETE")) S $P(AFTER0,U,1)="@" S $P(AFTER0,U,2)=$G(PATIENT) S $P(AFTER0,U,3)=$G(PXAVISIT) S $P(AFTER0,U,4)=$G(PXAA("LEVEL/SEVERITY")) S $P(AFTER12,U,1)=$G(PXAA("EVENT D/T")) S $P(AFTER12,U,4)=$G(PXAA("ENC PROVIDER")) S $P(AFTER811,U,1)=$G(PXAA("COMMENT")) ; ;--PACKAGE AND SOURCE S $P(AFTER812,"^",2)=$G(PXAPKG) S $P(AFTER812,"^",3)=$G(PXASOURC) ; S ^TMP("PXK",$J,"HF",PXAK,0,"AFTER")=AFTER0 S ^TMP("PXK",$J,"HF",PXAK,12,"AFTER")=AFTER12 S ^TMP("PXK",$J,"HF",PXAK,811,"AFTER")=AFTER811 S ^TMP("PXK",$J,"HF",PXAK,812,"AFTER")=AFTER812 ; SETVARB ;Set the before variables. N BEFOR0,BEFOR12,BEFOR811,BEFOR812 N IENB,PXAAX,PXBCNT,PXBKY,PXBSKY,PXBSAM D HF^PXBGHF(PXAVISIT) ; S IENB="" I PXBCNT>0 D . S PXAAX("HEALTH FACTOR")=$P($G(^AUTTHF(PXAA("HEALTH FACTOR"),0)),U,1) . S IENB=$O(PXBKY(PXAAX("HEALTH FACTOR"),IENB)) I $G(IENB) D . S BEFOR0=$G(^AUPNVHF(IENB,0)) . S BEFOR12=$G(^AUPNVHF(IENB,12)) . S BEFOR811=$G(^AUPNVHF(IENB,811)) . S BEFOR812=$G(^AUPNVHF(IENB,812)) E S (BEFOR0,BEFOR11,BEFOR12,BEFOR811,BEFOR812)="" ; S ^TMP("PXK",$J,"HF",PXAK,0,"BEFORE")=BEFOR0 S ^TMP("PXK",$J,"HF",PXAK,12,"BEFORE")=BEFOR12 S ^TMP("PXK",$J,"HF",PXAK,811,"BEFORE")=BEFOR811 S ^TMP("PXK",$J,"HF",PXAK,812,"BEFORE")=BEFOR812 S ^TMP("PXK",$J,"HF",PXAK,"IEN")=IENB ; Q