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

BMXADOS1.m

Go to the documentation of this file.
  1. BMXADOS1 ; IHS/CIHA/GIS - UPDATE THE BMX ADO SCHEMA FILE GUI VERSION ;
  1. ;;4.0;BMX;;JUN 28, 2010
  1. ; RPC CALLS
  1. ;
  1. ;
  1. ;
  1. DISP(OUT) ; TEMP DISPLAY
  1. N I,X
  1. S I=0 W !
  1. F S I=$O(@OUT@(I)) Q:'I S X=@OUT@(I) S X=$TR(X,$C(30),"}") S X=$TR(X,$C(31),"{") W !,X
  1. Q
  1. ;
  1. SCHEMA(NAME) ; GIVEN SCHEMA NAME, RETURN THE IEN
  1. N IEN
  1. S IEN=$O(^BMXADO("B",NAME,0))
  1. Q IEN
  1. ;
  1. FILE ; RETURN A LIST OF FILES
  1. N OUT,%,SIEN
  1. S SIEN=$$SCHEMA("FILEMAN FILES")
  1. D SS^BMXADO(.OUT,SIEN,"","B~B~C~")
  1. D DISP(OUT) R %:$G(DTIME,60) ; IHS/OIT/HMW SAC Exemption Applied For
  1. K ^TMP("BMX ADO",$J)
  1. Q
  1. ;
  1. SF ; RETURN A LIST OF SUBFILES
  1. N OUT,%,SIEN
  1. S SIEN=$$SCHEMA("SUBFILES")
  1. D SS^BMXADO(.OUT,SIEN,"","~~~~~SFIT~BMXADOS1~2~")
  1. D DISP(OUT) R %:$G(DTIME,60) ; IHS/OIT/HMW SAC Exemption Applied For
  1. K ^TMP("BMX ADO",$J)
  1. Q
  1. ;
  1. FLD ; RETURN LIST OF FIELDS FOR A FILE OR SUBFILE
  1. N OUT,%,SIEN
  1. S SIEN=$$SCHEMA("FIELDS")
  1. D SS^BMXADO(.OUT,SIEN,"","~~~~~FLDIT~BMXADOS1~2~")
  1. D DISP(OUT) R %:$G(DTIME,60) ; IHS/OIT/HMW SAC Exemption Applied For
  1. K ^TMP("BMX ADO",$J)
  1. Q
  1. ;
  1. SCH ; RETURN A LIST OF SCHEMAS
  1. N OUT,%,SIEN
  1. S SIEN=$$SCHEMA("SCHEMAS")
  1. D SS^BMXADO(.OUT,SIEN,"","B~~~")
  1. D DISP(OUT) R %:$G(DTIME,60) ; IHS/OIT/HMW SAC Exemption Applied For
  1. K ^TMP("BMX ADO",$J)
  1. Q
  1. ;
  1. SD ; RETURN THE SCHEMA DEFINITION
  1. N OUT,%,SIEN
  1. S SIEN=$$SCHEMA("SCHEMA DEFINITION")
  1. D SS^BMXADO(.OUT,SIEN,"52,","~~~")
  1. D DISP(OUT) R %:$G(DTIME,60) ; IHS/OIT/HMW SAC Exemption Applied For
  1. K ^TMP("BMX ADO",$J)
  1. Q
  1. ;
  1. FLDIT(PARAM,IENS,MAX,OUT,TOT) ; CUSTOM ITERATOR TO DISPLAY FIELDS
  1. N SFARR,CNT,DEL,NUM,NAME,DDT,DLEN,DHDR,DRO,DKEY,DNA,X,Y
  1. D FLIST^BMXADOS(.SFARR,PARAM)
  1. S CNT=0,DEL=" ["
  1. F S CNT=$O(SFARR(CNT)) Q:'CNT D
  1. . S X=SFARR(CNT) I '$L(X) Q
  1. . S NAME=$P(X,DEL)
  1. . ; F Q:$E(NAME)'=" " S NAME=$E(NAME,2,999)
  1. . I '$L(NAME) Q
  1. . S NUM=+$P(X,DEL,2) I 'NUM Q
  1. . S TOT=TOT+1
  1. . S Y=$$FDEF^BMXADOS(PARAM,NUM) I '$L(Y) Q ; ""
  1. . S DDT=$E(Y),DLEN=+$E(Y,2,6),DHDR=$E(Y,7,99)
  1. . S DRO="NO" S DKEY="NO" S DNA="YES"
  1. . S ^TMP("BMX ADO",$J,TOT)=NUM_U_NAME_U_DDT_U_DLEN_U_DHDR_U_DRO_U_DKEY_U_DNA_$C(30)
  1. Q ""
  1. ;
  1. FNIT(PARAM,IENS,MAX,OUT,TOT) ; CUSTOM ITERATOR TO DISPLAY FILE OR SUBFILE NAME GIVEN FILE NUMBER
  1. N NUM,NAME
  1. S NUM=+PARAM
  1. S NAME=""
  1. Q:'$D(^DD(NUM,0,"NM")) ""
  1. S NAME=$O(^DD(NUM,0,"NM",0))
  1. S TOT=TOT+1
  1. S ^TMP("BMX ADO",$J,TOT)=NUM_U_NAME_$C(30)
  1. Q ""
  1. ;
  1. SFIT(PARAM,IENS,MAX,OUT,TOT) ; CUSTOM ITERATOR TO DISPLAY SUBFILES
  1. N SFARR,CNT,DEL,NUM,NAME
  1. D SC^BMXADOS(.SFARR,PARAM)
  1. S CNT=0,DEL=" ("
  1. F S CNT=$O(SFARR(CNT)) Q:'CNT D
  1. . S X=SFARR(CNT) I '$L(X) Q
  1. . S NAME=$P(X,DEL)
  1. . ; F Q:$E(NAME)'=" " S NAME=$E(NAME,2,999)
  1. . I '$L(NAME) Q
  1. . S NUM=+$P(X,DEL,2) I 'NUM Q
  1. . S TOT=TOT+1
  1. . S ^TMP("BMX ADO",$J,TOT)=NUM_U_NAME_$C(30)
  1. Q ""
  1. ;
  1. SFT(FNAME) ; TRIGGER "YES" TO INDICATE THAT A SUBFILE IS PRESENT WITHIN A FILE
  1. I '$L($G(FNAME)) Q ""
  1. N FIEN
  1. S FIEN=$O(^DIC("B",FNAME,0))
  1. I 'FIEN Q ""
  1. I '$O(^DD(FIEN,"SB",0)) Q ""
  1. Q "+"
  1. ;