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

XDRRMRG0.m

Go to the documentation of this file.
  1. XDRRMRG0 ;SF-IRMFO/REM - DUP VERIFICATION FOR ANCILLARY SERVICES ;08/09/2000 10:47
  1. ;;7.3;TOOLKIT;**23,47**;Apr 25, 1995
  1. ;;
  1. EN ;
  1. N XDRNAME,XDRY,XQADATA,XDRFILE,DFNFR,DFNTO,XDRNOD2,XDRDA,X,Y,XDRAID,ZXQAID,PRIFILE ; MODIFIED 03/28/00
  1. S PRIFILE=$$FILE^XDRDPICK Q:PRIFILE'>0 ; MODIFIED 03/28/00
  1. K DIC S DIC="^VA(15.1,PRIFILE,2,",DIC("S")="I $$SCRN2^XDRRMRG0(+Y)" ; MODIFIED 03/28/00
  1. S DIC(0)="AEQZ" D ^DIC K DIC Q:+Y'>0
  1. S XDRNAME=Y(0,0),XDRFILE=$P(Y(0),U,3),XDRAID=+Y
  1. K DIC S DIC("S")="I $$SCRN^XDRRMRG0(XDRNAME,+Y)",DIC("A")="Select a POTENTIAL DUPLICATE ENTRY: "
  1. S DIC=15,DIC(0)="AEQZ" D ^DIC K DIC S XDRY=+Y Q:XDRY'>0
  1. G:$$CHKSTAT(XDRY,XDRNAME) END
  1. S X=^VA(15,XDRY,0)
  1. I $P($G(^VA(15,XDRY,2,1,0)),U,5)=2 S DFNTO=+X,DFNFR=+$P(X,U,2)
  1. E S DFNFR=+X,DFNTO=+$P(X,U,2)
  1. S XDRDA=$O(^VA(15.1,PRIFILE,2,"B",XDRNAME,0)) Q:XDRDA'>0 ; MODIFIED 03/28/00
  1. S XDRNOD2=$G(^VA(15.1,PRIFILE,2,XDRDA,2)) ; MODIFIED 03/28/00
  1. S XQADATA=XDRY_U_DFNFR_";"_DFNTO_U_XDRNAME_U_XDRFILE_U_$P(XDRNOD2,U)_U_$P(XDRNOD2,U,2)
  1. S (XQAID,ZXQAID)="XDR,"_DFNFR_"/"_DFNTO_","_XDRAID
  1. D ^XDRRMRG1
  1. I XDRY="V" S XQAID=ZXQAID D DELETEA^XQALERT
  1. END W ! K DIR S DIR(0)="Y",DIR("A")="Do you want to process another",DIR("B")="YES"
  1. ;S DIR("?")=" Enter 'Y' to proceed, 'N' or '^' to stop."
  1. D ^DIR K DIR
  1. G:Y EN Q:$D(DIRUT)
  1. Q
  1. ;
  1. CHKSTAT(DA,NAME) ;Check ancillary Service Determination fld.
  1. N X
  1. S X=$O(@("^VA(15,"_DA_",2,""B"","_""""_NAME_""""_",0)")) I X'>0 Q 0
  1. I $$GET1^DIQ(15.02,X_","_DA_",",.02,"I")="V" D Q 1
  1. .W !!,*7," This pair has already been processed as VERIFIED, DUPLICATE by your service!",!
  1. Q 0
  1. ;
  1. SCRN(NAME,DA) ;Screen ancillary service with no data.
  1. N IEN
  1. I $P(^(0),U,3)'="X"&($P(^(0),U,3)'="R") Q 0 ; NAKED GLOBAL FROM FILEMAN DIC CALL
  1. S IEN=$O(^(2,"B",NAME,0)) Q:IEN'>0 1
  1. I $P(^VA(15,DA,2,IEN,0),U,2)="D" Q 0
  1. Q 1
  1. ;
  1. SCRN2(DA2) ;Check if user part of ancillary service mailgrp.
  1. N XDRGRP,X,XDRFLG
  1. S XDRFLG=0
  1. S XDRGRP=$P(^(0),U,2) I XDRGRP="" Q XDRFLG
  1. S X=0 F S X=$O(^XMB(3.8,XDRGRP,1,X)) Q:X'>0!(XDRFLG) D
  1. . I +$G(^XMB(3.8,XDRGRP,1,X,0))=DUZ S XDRFLG=1
  1. Q XDRFLG
  1. ;
  1. SEND ;REM - 9/9/96 using mail msgs instead of alerts.
  1. I '$D(XDRGL) S XDRGL="^DPT(" ;*Take out after alpha.
  1. S XQAID="XDR,"_DFNFR_"/"_DFNTO_","_XDRAID
  1. S XQAROU="XDRRMRG1"
  1. S (XMSUB,XQAMSG)=XDRNAME_" possible duplicates: "_$P(@(XDRGL_DFNFR_",0)"),U)_" AND "_$P(@(XDRGL_DFNTO_",0)"),U)
  1. D SETUP^XQALERT
  1. S XMDUZ=.5,XMCHAN=1 D:XDRGRP'="" ^XMD
  1. Q
  1. ;
  1. SETARY ;REM - 9/9/96 Sets the R array for the text of the mail msg.
  1. N SSNFR,SSNTO
  1. I '$D(XDRGL) S XDRGL="^DPT(" ;*Take out after alpha.
  1. S SSNFR=$$GET1^DIQ(2,DFNFR,.09)
  1. S SSNTO=$$GET1^DIQ(2,DFNTO,.09)
  1. S R(1,0)="FROM Record "_SSNFR_" "_$P(@(XDRGL_DFNFR_",0)"),U)_" [#"_DFNFR_"]"
  1. S R(2,0)="INTO Record "_SSNTO_" "_$P(@(XDRGL_DFNTO_",0)"),U)_" [#"_DFNTO_"]"
  1. S R(2.1,0)=""
  1. S R(2.2,0)="Ancillary service name: "_XDRNAME
  1. Q