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

MPIFDUPS.m

Go to the documentation of this file.
  1. MPIFDUPS ;SFCIO/CMC-MPIF RPC APIS ;26 Sept 01
  1. ;;1.0; MASTER PATIENT INDEX VISTA ;**20**;30 Apr 99
  1. ;
  1. ;Integration Agreements Utilized:
  1. ; ^DPT( - #2070
  1. ;
  1. TOSITE(RETURN,ARRAY) ;
  1. ; RPC for processing ICNs from MPI's TOSITE global
  1. I $G(ARRAY)="" S RETURN="-1^NO DATA TO CHECK" Q
  1. N ENT,ICN,SSN,SITE,NODE,MPIN,DFN
  1. S RETURN=""
  1. F ENT=1:1 S NODE=$P(ARRAY,"^",ENT) Q:NODE=""!(+RETURN=-1) D
  1. .S SITE=$P(NODE,";")
  1. .I $P($$SITE^VASITE,"^",3)'=SITE S RETURN="-1^WRONG SITE^"_ARRAY Q
  1. .S ICN=$P(NODE,";",2),SSN=$P(NODE,";",3)
  1. .S DFN=+$$GETDFN^MPIF001(ICN)
  1. .I DFN<0 S RETURN=RETURN_NODE_";1^" Q
  1. . ; ^ 1=ICN doesn't exist
  1. .I DFN D
  1. ..; checking if ICN is on MPI node
  1. ..S MPIN=$$MPINODE^MPIFAPI(DFN)
  1. ..I $P(MPIN,"^")'=ICN S RETURN=RETURN_NODE_";4^" Q
  1. ..; checking if SSN is the same as on MPI - 4=icn should be inactivated
  1. ..I $P(^DPT(DFN,0),"^",9)'=SSN S RETURN=RETURN_NODE_";3^" Q
  1. ..; 3 = SSN conflict
  1. ..S RETURN=RETURN_NODE_";2^" Q
  1. ..; 2 = ICN exists
  1. Q
  1. ;