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

ACHSDN3.m

Go to the documentation of this file.
  1. ACHSDN3 ; IHS/ITSC/PMF - DENIAL EDIT PROVIDERS ; [ 02/12/2002 10:19 AM ]
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;**3**;JUN 11, 2001
  1. ;ACHS*3.1*3 remove the 'other providers' node correctly
  1. ;
  1. A ;
  1. Q:$D(DUOUT)
  1. W @IOF,?33,"PROVIDER EDITS",!,$$REPEAT^XLFSTR("=",79),!,"PRIMARY PROVIDER....",!
  1. K ACHDSP
  1. S A=$G(^ACHSDEN(DUZ(2),"D",ACHSA,100))
  1. G:$P(A,U)="Y" A2
  1. S ACHD("PROV",1)="N"
  1. W !," 1. ",$P(A,U,3)
  1. G B
  1. ;
  1. A2 ;
  1. S ACHD("PROV",1)="O",ACHD("PTR")=$P(A,U,2)
  1. I ACHD("PTR")]"",$D(^AUTTVNDR(ACHD("PTR"),0)) W !," 1. ",$P($G(^AUTTVNDR(ACHD("PTR"),0)),U)
  1. B ;
  1. W !!!,"OTHER PROVIDERS....",!
  1. S ACHD("TVNDR")=1
  1. G C:'$D(^ACHSDEN(DUZ(2),"D",ACHSA,200))
  1. ;
  1. ;2/8/01 pmf ACHS*3.1*3 remove the 'other providers' node correctly
  1. ;I $P($G(^ACHSDEN(DUZ(2),"D",ACHSA,200,0)),U,4)=0 K ^ACHSDEN(DUZ(2),"D",ACHSA,0) G C ; ACHS*3.1*3
  1. I $P($G(^ACHSDEN(DUZ(2),"D",ACHSA,200,0)),U,4)=0 K ^ACHSDEN(DUZ(2),"D",ACHSA,200) G C ; achs*3.1*3
  1. ;
  1. S ACHD=0
  1. B1 ;
  1. S ACHD=$O(^ACHSDEN(DUZ(2),"D",ACHSA,200,ACHD))
  1. G C:+ACHD=0
  1. S ACHD("PTR")=$P($G(^ACHSDEN(DUZ(2),"D",ACHSA,200,ACHD,0)),U)
  1. ;
  1. I ACHD("PTR")]"",$D(^AUTTVNDR(ACHD("PTR"),0)) S ACHD("TVNDR")=ACHD("TVNDR")+1,ACHD("PROV",ACHD("TVNDR"))="O^"_ACHD W !," ",ACHD("TVNDR"),". ",$P($G(^AUTTVNDR(ACHD("PTR"),0)),U) G B1
  1. S DIE="^ACHSDEN("_DUZ(2)_",""D"","
  1. S DA(2)=DUZ(2),DA(1)=ACHSA,DA=ACHD,DR=200,DR(2,9002071.02)=".01///@"
  1. D ^DIE
  1. G B1
  1. ;
  1. C ;
  1. G D:'$D(^ACHSDEN(DUZ(2),"D",ACHSA,210))
  1. ;02/11/02 pmf ACHS*3.1*3 remove the 'other providers not on file'
  1. ; node correctly
  1. ;I $P($G(^ACHSDEN(DUZ(2),"D",ACHSA,210,0)),U,4)=0 K ^ACHSDEN(DUZ(2),"D",ACHSA,0) G D ; ACHS*3.1*3
  1. I $P($G(^ACHSDEN(DUZ(2),"D",ACHSA,210,0)),U,4)=0 K ^ACHSDEN(DUZ(2),"D",ACHSA,210) G D ; ACHS*3.1*3
  1. ;
  1. F ACHD=0:0 S ACHD=$O(^ACHSDEN(DUZ(2),"D",ACHSA,210,ACHD)) Q:+ACHD=0 D
  1. .S ACHD("TVNDR")=ACHD("TVNDR")+1
  1. .S ACHD("PROV",ACHD("TVNDR"))="N^"_ACHD
  1. .W !," ",ACHD("TVNDR"),". ",$P($G(^ACHSDEN(DUZ(2),"D",ACHSA,210,ACHD,0)),U)
  1. ;
  1. D ;
  1. S Y=$$DIR^ACHS("FO","Edit which? (1"_$S(+ACHD("TVNDR")>1:" thru "_ACHD("TVNDR"),1:"")_", A=add a vendor, RETURN=none) ","","","^D QUES^ACHSDN3",2)
  1. Q:$D(DTOUT)!$D(DUOUT)!(Y="")
  1. G E:+Y>0&(+Y'>ACHD("TVNDR"))
  1. G PROV:$E(Y)="A"
  1. D QUES
  1. G D
  1. ;
  1. E ;
  1. W !!
  1. I Y=1 S ACHDSP="" D PRMPRV^ACHSDN1 G A
  1. G E2:$P(ACHD("PROV",+Y),U)="N"
  1. G A:$P(ACHD("PROV",+Y),U)'="O"
  1. I '$$DIE(".01:99",$P(ACHD("PROV",+Y),U,2),200)
  1. G A
  1. ;
  1. E2 ;
  1. I '$$DIE(".01:99",$P(ACHD("PROV",+Y),U,2),210)
  1. G A
  1. ;
  1. PROV ;
  1. S Y=$$DIR^ACHS("Y","Is the new provider in the VENDOR file? ","YES","","",2)
  1. G A:$D(DUOUT)!$D(DTOUT),O1:Y,O2:'Y
  1. O1 ;
  1. S:'$D(^ACHSDEN(DUZ(2),"D",ACHSA,200,0)) ^ACHSDEN(DUZ(2),"D",ACHSA,200,0)=$$ZEROTH^ACHS(9002071,1,200)
  1. S DIC="^ACHSDEN("_DUZ(2)_",""D"","_ACHSA_",200,",DA(2)=DUZ(2),DA(1)=ACHSA,DIC(0)="AELMNQ"
  1. D ^DIC
  1. G:Y<1 A
  1. I '$$DIE(".01:99",+Y,200)
  1. K DA,DIC,DIE,DR
  1. G A
  1. ;
  1. O2 ;
  1. S:'$D(^ACHSDEN(DUZ(2),"D",ACHSA,210,0)) ^ACHSDEN(DUZ(2),"D",ACHSA,210,0)=$$ZEROTH^ACHS(9002071,1,210)
  1. S DIC="^ACHSDEN("_DUZ(2)_",""D"","_ACHSA_",210,",DA(1)=ACHSA,DIC(0)="QAZEML",DA(2)=DUZ(2)
  1. D ^DIC
  1. G A:+Y<1
  1. I '$$DIE(".01:99",+Y,210)
  1. G A
  1. ;
  1. QUES ;EP - From DIR
  1. W *7,!,"Enter one of the numbers shown, or an 'A'."
  1. Q
  1. ;
  1. DIE(DR,DA,N) ; N = Global node
  1. W !!
  1. S DA(1)=ACHSA,DA(2)=DUZ(2),DIE="^ACHSDEN("_DUZ(2)_",""D"","_ACHSA_","_N_","
  1. I '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","+") S DUOUT="" Q 0
  1. D ^DIE
  1. I '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","-") S DUOUT="" Q 0
  1. Q 1
  1. ;