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

ATSERCH9.m

Go to the documentation of this file.
  1. ATSERCH9 ;TUCSON/DG;MENU FOR CHOICES TO LINK TO [ 10/25/91 1:40 PM ]
  1. ;;2.5;SEARCH TEMPLATE COMPARISON;;OCT 25, 1991
  1. ;
  1. F ATSENB=1:1:3 S ATSEOP(ATSENB)=$P($T(OPTIONS+ATSENB),";",3)
  1. I ($D(ATSNPT)&(ATSNOT=""))!(ATSEARCH(1,"SRCHRESLTREF")=ATSEARCH(2,"SRCHRESLTREF")) D PTRONLY,EOJ Q
  1. I ATSEARCH("PTRFILENUM")=ATSEARCH(2,"SRCHFILENUM")!(ATSEARCH("PTRFILENUM")=ATSEARCH(1,"SRCHFILENUM")) D ASKFILE,EOJ Q
  1. I ATSEARCH(1,"SRCHFILENUM")=ATSEARCH(2,"SRCHFILENUM"),ATSEARCH(1,"FIELD")=.01,ATSEARCH(1,"SECONDPCE")["P" D ASKFILE3,EOJ Q ;.01 FIELD IS A POINTER
  1. I ATSEARCH(1,"SRCHFILENUM")=ATSEARCH(2,"SRCHFILENUM") D ASKFILE3,EOJ Q
  1. D @$S(ATSNOT="":"ASKFILE4",1:"ASKFILE5^ATSERCHH"),EOJ Q ;IF TWO TEMPLATES LINKED TO DIFFERENT FILES
  1. ;
  1. ASKFILE ;PTRFILE=SRCHFILE1 OR SRCHFILE2
  1. S X="" F ATSL=0:0 Q:X=1!(X=2)!(X="^")!(ATSFLAG) D:X["?" HELP D @$S(ATSNOT="":"ASKLOOP",1:"ASKLOOP2")
  1. I ATSFLAG Q
  1. S ATSEARCH("FILELINK")=ATSEARCH(X,"SRCHFILENUM"),ATSX=X
  1. D ^ATSERCH4
  1. Q
  1. ;
  1. ASKLOOP ;CONTINUATION OF FOR LOOP IN ASKFILE IF INTERSECTION OF TEMPLATES
  1. I ATSEARCH("PTRFILENUM")=ATSEARCH(1,"SRCHFILENUM") S ATSEY=1
  1. E S ATSEY=2
  1. W !!,"Choose, by number, the file you want merged results linked to:",!!,1," ",@ATSEOP(1),!,2," ",@ATSEOP(2) W !!,"Your choice (1 or 2): ",ATSEY,"// " R X:DTIME
  1. S:X=""&($T) X=ATSEY S:'$T X="^" I "^"=X S ATSFLAG=$S($D(^UTILITY("ATSEARCH",$J,"MERGED")):2,1:1)
  1. Q
  1. ;
  1. ASKLOOP2 ;PTRFILE=SRCHFILE1 OR SRCHFILE2, DIFFERENCE BETWEEN TEMPLATES
  1. W !!,"Results will be linked with the ",@$S(ATSMTCH=2:ATSEOP(1),1:ATSEOP(2))_" file" H 2
  1. S X=$S(ATSMTCH=2:1,1:2)
  1. ;
  1. ;IF MATCH=2 THEN CAN ONLY LINK TO TEMPLATE 1
  1. ;IF MATCH=3 THEN CAN ONLY LINK TO TEMPLATE 2
  1. ;
  1. Q
  1. ;
  1. PTRONLY ;LINKS ONLY TO PTRFILE IF TEMPLATES LINKED TO SAME FILE
  1. S ATSEARCH("FILELINK")=ATSEARCH("PTRFILENUM")
  1. W !!,"Results will be linked with the ",ATSEARCH("PTRFILENAM")," file" H 2
  1. D ^ATSERCH4
  1. Q
  1. ;
  1. ASKFILE3 ;SRCHFILE1=SRCHFILE2, IF DIFFERENCE, THEN UTILIZE THE TEMPLATE THAT
  1. ;HAS THE ENTRIES YOU WILL STORE TO CREATE THE "MERGED" UTILITY NODES
  1. S X="" F ATSL=0:0 Q:X=1!(X=2)!(X="^")!(ATSFLAG) D:X["?" HELP D ASKLOOP3
  1. I ATSFLAG Q
  1. S ATSENB=$S(ATSMTCH=3:2,1:1) ; IF ATSMTCH=3 THEN USE TEMPLATE TWO
  1. S ATSEARCH("FILELINK")=$S(X=1:ATSEARCH(1,"SRCHFILENUM"),1:ATSEARCH("PTRFILENUM"))
  1. ;FOR FILELINK, ATSEARCH(1,"SRCHFILENUM")=(2,"SRCHFILENUM")
  1. S ATSX=ATSENB
  1. ;ATSX IS USEFUL ONLY IF USER WANTS RESULTS NOT LINKED TO PTR FILE
  1. D ^ATSERCH4
  1. Q
  1. ;
  1. ASKLOOP3 ;CONTINUATION OF FOR LOOP IN ASKFILE3
  1. W !!,"Choose, by number, the file you want results linked to:",!!,1," ",@ATSEOP(1),!,2," ",@ATSEOP(3) R !!,"Your choice (1 or 2): 2// ",X:DTIME
  1. S:X=""&($T) X=2 S:'$T X="^" I "^"=X S ATSFLAG=$S($D(^UTILITY("ATSEARCH",$J,"MERGED")):2,1:1)
  1. Q
  1. ;
  1. ASKFILE4 ;PTRFILE,SRCHFILE1,SRCHFILE2 DIFF FILES, INTERSECTION OF TEMPLATES
  1. S X="" F ATSL=0:0 Q:(X'<1&(X'>3))!(X="^")!(ATSFLAG) D:X["?" HELP D ASKLOOP4
  1. I ATSFLAG Q
  1. S ATSEARCH("FILELINK")=$S(X=1:ATSEARCH(1,"SRCHFILENUM"),X=2:ATSEARCH(2,"SRCHFILENUM"),1:ATSEARCH("PTRFILENUM")),ATSX=X
  1. D ^ATSERCH4
  1. Q
  1. ;
  1. ASKLOOP4 ;CONTINUATION OF FOR LOOP IN ASKFILE4
  1. W !!,"Choose, by number, the file you want merged results linked to:",!!,1," ",@ATSEOP(1),!,2," ",@ATSEOP(2),!,3," ",@ATSEOP(3) R !!,"Your choice (1-3): 3// ",X:DTIME
  1. S:X=""&($T) X=3 S:'$T X="^" I "^"=X S ATSFLAG=$S($D(^UTILITY("ATSEARCH",$J,"MERGED")):2,1:1)
  1. Q
  1. ;
  1. HELP ; - EP - CALL TO HELP FRAME
  1. S XQH="ATSEARCH-LINK",DIC(0)="X" D EN^XQH
  1. W:$D(IOF) @IOF
  1. Q
  1. ;
  1. EOJ ;
  1. K ATSEOP,ATSENB,ATSEY,ATSNPT
  1. Q
  1. ;
  1. OPTIONS ;MENU CHOICES
  1. ;;ATSEARCH(1,"SRCHFILENAM")
  1. ;;ATSEARCH(2,"SRCHFILENAM")
  1. ;;ATSEARCH("PTRFILENAM")
  1. ;;