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

XUA4A7.m

Go to the documentation of this file.
  1. XUA4A7 ;ISCSF/RWF - K7, Give entrys into F6 a Provider key ;03/24/10 07:58
  1. ;;8.0;KERNEL;**49,542**;Jul 10, 1995;Build 6
  1. Q ;don't enter from top.
  1. F6S ;Give provider the key.
  1. N %,X1,X2 S %=$G(^DIC(6,DA,"I")) I %,%<DT Q ;see if inactive
  1. S X1=+$G(^DIC(16,X,"A3")) I 'X1 Q ;get pointer
  1. S %=$O(^DIC(19.1,"B","PROVIDER",0)) I '% Q ;get index
  1. F6S7 ;Kernel 7
  1. I $D(^VA(200,X1,51,%,0)) Q ;allready have it.
  1. N DD,DO,DIC,DS,DA
  1. S DIC="^VA(200,DA(1),51,",DIC(0)="NML",(X,DINUM)=%,DA(1)=X1,DIC("P")=$P(^DD(200,51,0),"^",2) D FILE^DICN ;give it.
  1. Q
  1. F6K Q ;can't delete
  1. ;
  1. F200S ;name change V6.5 only
  1. N X1,X2 F X1=0:0 S X1=$O(^DIC(19.1,"D",DA,X1)) Q:X1'>0 S X2=$G(^DIC(19.1,X1,0)) I $P(X2,U,3)="l" S ^VA(200,"AK."_$P(X2,U),X,DA)=""
  1. Q
  1. F200K ;name change V6.5 only
  1. N X1,X2 S X1="AK." F X2=0:0 S X1=$O(^VA(200,X1)) Q:$E(X1,1,3)'="AK." K ^VA(200,X1,X,DA)
  1. Q
  1. ;
  1. FE51S ;Key assignment from new person key subfile
  1. N %,X1,X2 S %=$G(^DIC(19.1,X,0)) Q:$P(%,U,3)'="l" ;see if lookup
  1. S X1=$P($G(^VA(200,DA(1),0)),U) Q:X1="" ;get name
  1. S ^VA(200,"AK."_$P(%,U),X1,DA(1))="" ;set X-ref
  1. Q:%'["PROVIDER" Q:'$D(^DD(3,0))
  1. S X2=+$P($G(^DIC(3,DA(1),0)),U,16) Q:$D(^DIC(6,X2,0)) ;see if in provider file
  1. N DIC,DD,DO,DA,DS,X,Y S DIC="^DIC(6,",DIC(0)="L",DLAYGO=6,(X,DINUM)=X2 D FILE^DICN ;add
  1. Q
  1. FE51K ;Key removal from new person key subfile
  1. N %,X1 S %=$G(^DIC(19.1,X,0)) ;remove incase lookup flag has been removed.
  1. S X1=$P($G(^VA(200,DA(1),0)),U)
  1. K ^VA(200,"AK."_$P(%,U),X1,DA(1))
  1. Q
  1. F19S ;holder subfile assignment V6.5 only
  1. N %,X1,X2 S %=$G(^DIC(19.1,DA(1),0)) Q:$P(%,U,3)'="l" ;see if lookup
  1. S X1=$P($G(^VA(200,X,0)),U) Q:X1="" ;get name
  1. S ^VA(200,"AK."_$P(%,U),X1,X)="" ;set X-ref
  1. Q:%'["PROVIDER"
  1. S X2=+$P($G(^DIC(3,X,0)),U,16) Q:$D(^DIC(6,X2,0)) ;see if in provider file
  1. N DIC,DD,DO,DA,DS,X,Y S X=X2,DIC="^DIC(6,",DIC(0)="L",DLAYGO=6,DINUM=X2 D FILE^DICN ;add
  1. Q
  1. F19K ;holder subfile V6.5 only
  1. S %=$G(^DIC(19.1,DA(1),0)) Q:$P(%,U,3)'="l"
  1. S X1=$P($G(^DIC(3,X,0)),U)
  1. K ^VA(200,"AK."_$P(%,U),X1,X)
  1. Q
  1. LAYGO ;Called from ^DD(200,.01,"LAYGO",1,0)
  1. Q:DIC(0)'["E"
  1. W !,"Checking SOUNDEX for matches."
  1. N DIR,DUOUT,DIRUT,Y,XU1,XU2,XU3 S XU3=X
  1. S X=$$EN^XUA4A71(XU3),XU2=0
  1. F XU1=0:0 S XU1=$O(^VA(200,"ASX",X,XU1)) Q:XU1'>0 D Q:$D(DIRUT)
  1. . W !?5,$P($G(^VA(200,XU1,0)),"^") S XU2=XU2+1
  1. . I '(XU2#16) N X S DIR(0)="E" D ^DIR
  1. . Q
  1. I 'XU2 W !,"No matches found." S XU2=1 G L3
  1. L2 R !,"Do you still want to add this entry: NO//",XU2:DTIME S XU2=$TR($E(XU2_"N"),"NnYy^?","00110?")
  1. I "01"'[XU2 W !?4,"Answer NO to stop the addition of ",XU3," as a new person.",!?4,"Answer YES to add, a '^' will be taken as a NO." G L2
  1. L3 I XU2
  1. S X=XU3
  1. Q