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

ACHS3PP3.m

Go to the documentation of this file.
  1. ACHS3PP3 ; IHS/ITSC/PMF - COMPILE CHS THIRD PARTY PAYMENT (ALL PATIENTS) ; [ 10/16/2001 8:16 AM ]
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;;JUN 11, 2001
  1. ;
  1. ;TPF RE-WRITTEN FROM ACHS3PPC
  1. ;
  1. ;
  1. I $D(ACHSPAT) D ^ACHS3PP1 Q
  1. S ACHSFAC=DUZ(2)
  1. GETFY ;
  1. S ACHSFY1=""
  1. F S ACHSFY1=$O(^ACHSF(ACHSFAC,"D","B",ACHSFY1)) Q:ACHSFY1="" D
  1. .I '$D(^TMP("ACHS3PP",$J,ACHSFAC)) S ^TMP("ACHS3PP",$J,ACHSFAC,0)=""
  1. .S ACHSFYA=$E(ACHSFY1,2),ACHSFYB=$E(ACHSFY,4)
  1. .I ACHSFYA'=ACHSFYB Q
  1. .D GETDIEN
  1. K ACHSDOCR,X,Y,Z
  1. D ^ACHS3PP4 ;DO ALL PATIENTS
  1. Q
  1. GETDIEN ;
  1. S ACHSDIEN=""
  1. F S ACHSDIEN=$O(^ACHSF(ACHSFAC,"D","B",ACHSFY1,ACHSDIEN)) Q:ACHSDIEN="" D
  1. .Q:'$D(^ACHSF(ACHSFAC,"D",ACHSDIEN,0))!'$D(^ACHSF(ACHSFAC,"D",ACHSDIEN,"PA"))
  1. .I $P($G(^ACHSF(ACHSFAC,"D",ACHSDIEN,0)),U,9)'>0 Q
  1. .S ACHSDOCR=$G(^ACHSF(ACHSFAC,"D",ACHSDIEN,0))
  1. .Q:ACHSDOCR=""
  1. .S ACHSSERV=$S($P(ACHSDOCR,U,4):$P(ACHSDOCR,U,4),1:"UNKN")
  1. .I '(ACHSSER=4),ACHSSERV'=ACHSSER Q
  1. .D GETIDT
  1. Q
  1. GETIDT ;GET TRANSACTION RECORD INFORMATION
  1. S ACHSIDT=$P(ACHSDOCR,U,2),ACHSOBL=$P(ACHSDOCR,U,9)
  1. K Z
  1. ;
  1. S ACHSTRAN=0
  1. F S ACHSTRAN=$O(^ACHSF(ACHSFAC,"D",ACHSDIEN,"T",ACHSTRAN)) Q:'ACHSTRAN D
  1. .S X=$G(^ACHSF(ACHSFAC,"D",ACHSDIEN,"T",ACHSTRAN,0)) Q:X=""
  1. .S Y=$P(X,U,2)
  1. .I Y'="I",Y'="C" S Z("I")=$G(Z("I"))+$P(X,U,4),Z("3")=$G(Z("3"))+$P(X,U,8)
  1. Q:'$D(Z)
  1. S:$P($G(^AUTTLOC(ACHSFAC,0)),U,4)'="" ACHSAREA=$P($G(^AUTTLOC(ACHSFAC,0)),U,4)
  1. S ACHSDOC=$P(ACHSDOCR,U,14)_"-"_$P($G(^AUTTAREA(ACHSAREA,0)),U,3)_$E($P($G(^AUTTLOC(ACHSFAC,0)),U,17),2,3)_"-"_$P(ACHSDOCR,U)
  1. S ^TMP("ACHS3PP",$J,ACHSFAC,ACHSDOC)=ACHSIDT_U_ACHSOBL_U_Z("3")_U_Z("I")_U_ACHSSERV
  1. Q
  1. ;