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

BSTSDTS1.m

Go to the documentation of this file.
  1. BSTSDTS1 ;GDIT/HS/BEE-Standard Terminology DTS Calls/Processing ; 5 Nov 2012 9:53 AM
  1. ;;2.0;IHS STANDARD TERMINOLOGY;;Dec 01, 2016;Build 62
  1. ;
  1. Q
  1. ;
  1. DTSSR(OUT,BSTSWS) ;EP-DTS Id Lookup
  1. ;
  1. N STYPE,DLIST,NMID,DTSID,STATUS,STS,CONC,RSLT,ERSLT,SKIP
  1. ;
  1. S STYPE=$G(BSTSWS("STYPE"))
  1. ;
  1. S DLIST=$NA(^TMP("BSTSCMCL",$J))
  1. K @DLIST
  1. ;
  1. S NMID=$G(BSTSWS("NAMESPACEID")) S:NMID="" NMID=36 S:NMID=30 NMID=36
  1. ;
  1. S DTSID=$G(BSTSWS("SEARCH"))
  1. ;
  1. S BSTSWS("DTSID")=DTSID
  1. ;
  1. ;Get detail
  1. S STS=$$DETAIL^BSTSCMCL(.BSTSWS,.ERSLT)
  1. I $G(BSTSWS("DEBUG")) W !!,STS
  1. ;
  1. ;Skip Check
  1. S SKIP=0
  1. I $G(BSTSWS("ONLYLOAD"))]"" D
  1. . NEW SUB
  1. . S SKIP=1
  1. . S SUB="" F S SUB=$O(@DLIST@(1,"SUB",SUB)) Q:SUB="" I BSTSWS("ONLYLOAD")=$P($G(@DLIST@(1,"SUB",SUB)),U) S SKIP=0
  1. ;
  1. ;Update anyway if loaded (Skip partials)
  1. I $D(^BSTS(9002318.4,"D",36,DTSID)) D
  1. . NEW CIEN
  1. . S CIEN=$O(^BSTS(9002318.4,"D",36,DTSID,"")) Q:CIEN=""
  1. . I $$GET1^DIQ(9002318.4,CIEN_",",.03,"I")="P" Q
  1. . S SKIP=0
  1. ;
  1. ;File
  1. I 'SKIP S STATUS=$$UPDATE^BSTSDTS0(NMID)
  1. ;
  1. ;Look if now logged
  1. S CONC=$$CONC^BSTSDTS0(DTSID,.BSTSWS)
  1. I CONC]"" S @OUT@(1)=CONC_U_DTSID
  1. ;
  1. Q STS
  1. ;
  1. TSRCH(OUT,BSTSWS) ;EP-Test Search
  1. ;
  1. N II,STS,SEARCH,STYPE,WORD,MAX,DTSID,NMID,CSTS
  1. N BSTRT,BSCNT,SLIST,DLIST,RES,RCNT,CNT,TIME,ERR
  1. ;
  1. S SEARCH=$G(BSTSWS("SEARCH"))
  1. S STYPE=$G(BSTSWS("STYPE"))
  1. S DLIST=$NA(^TMP("BSTSCMCL",$J)) ;DTS Return List
  1. K @DLIST
  1. ;
  1. S MAX=$G(BSTSWS("MAXRECS")) S:MAX="" MAX=25
  1. S BSTRT=+$G(BSTSWS("BCTCHRC")) S:BSTRT=0 BSTRT=1
  1. S BSCNT=+$G(BSTSWS("BCTCHCT")) S:BSCNT=0 BSCNT=MAX
  1. S NMID=$G(BSTSWS("NAMESPACEID")) S:NMID="" NMID=36 S:NMID=30 NMID=36
  1. S BSTSWS("SNAPDT")=$$FMTE^BSTSUTIL(DT_".2400")
  1. ;
  1. ;Search
  1. S TIME=0,ERR=0,STS=""
  1. ;
  1. S BSTSWS("SEARCH")=SEARCH
  1. ;
  1. ;FSN
  1. S CSTS=$$TRMSRCH^BSTSCMCL(.BSTSWS,.RES)
  1. ;
  1. I $P(CSTS,U,2)]"" S ERR=1
  1. S $P(STS,U)=$P(CSTS,U)
  1. S $P(STS,U,2)=$P(CSTS,U,2)
  1. S $P(STS,U,3)=$P(STS,U,3)+$P(CSTS,U,3)
  1. ;
  1. Q STS
  1. ;
  1. UUPDATE(NMID,ROUT) ;EP-Add/Update UNII
  1. ;
  1. ;UNII Only
  1. I $G(NMID)'=5180 Q 1
  1. ;
  1. N GL,CONCDA,BSTSC,INMID,ERROR,TCNT,I,CVRSN,ST,NROUT,TLIST,STYPE,RTR
  1. ;
  1. S GL=$NA(^TMP("BSTSCMCL",$J,1))
  1. S ROUT=$G(ROUT,"")
  1. ;
  1. ;Find Concept
  1. I $P($G(@GL@("CONCEPTID")),U)="" Q 0
  1. ;
  1. ;Existing?
  1. I $G(@GL@("DTSID"))="" Q 0
  1. S CONCDA=$O(^BSTS(9002318.4,"D",NMID,@GL@("DTSID"),""))
  1. ;
  1. S INMID=$O(^BSTS(9002318.1,"B",NMID,"")) Q:INMID="" "0"
  1. ;
  1. S CVRSN=$$GET1^DIQ(9002318.1,INMID_",",.04,"I")
  1. ;
  1. ;Retired?
  1. I CONCDA]"",'$$RET^BSTSDTS3(CONCDA,CVRSN,GL) Q 0
  1. ;
  1. ;None found - create new
  1. I CONCDA="" S CONCDA=$$NEWC^BSTSDTS0()
  1. ;
  1. I +CONCDA<0 Q 0
  1. ;
  1. S NROUT=$P(@GL@("CONCEPTID"),U,3) S:NROUT="" NROUT=ROUT
  1. ;
  1. ;Set up top level
  1. S BSTSC(9002318.4,CONCDA_",",.02)=$P(@GL@("CONCEPTID"),U) ;Conc ID
  1. S BSTSC(9002318.4,CONCDA_",",.08)=@GL@("DTSID") ;DTSID
  1. S BSTSC(9002318.4,CONCDA_",",.07)=INMID ;Code Set
  1. S BSTSC(9002318.4,CONCDA_",",.03)="N"
  1. S BSTSC(9002318.4,CONCDA_",",.05)=$$EP2FMDT^BSTSUTIL($P(@GL@("CONCEPTID"),U,2),1)
  1. S BSTSC(9002318.4,CONCDA_",",.06)=$$EP2FMDT^BSTSUTIL(NROUT,1)
  1. S BSTSC(9002318.4,CONCDA_",",.11)="N"
  1. S BSTSC(9002318.4,CONCDA_",",.04)=CVRSN
  1. S BSTSC(9002318.4,CONCDA_",",.12)=DT
  1. S BSTSC(9002318.4,CONCDA_",",1)=$G(@GL@("FSN",1))
  1. ;
  1. ;Save ISA
  1. I $D(@GL@("ISA"))>1 D
  1. . ;
  1. . N ISACT
  1. . S ISACT="" F S ISACT=$O(@GL@("ISA",ISACT)) Q:ISACT="" D
  1. .. ;
  1. .. ;Save/update each ISA
  1. .. ;
  1. .. ;Already there?
  1. .. N DAISA,DA,IENS,DTSID,ISACD,NEWISA,DIC,Y,X,DLAYGO
  1. .. S ISACD=$P($G(@GL@("ISA",ISACT,0)),U) Q:ISACD=""
  1. .. S (NEWISA,DAISA)=$O(^BSTS(9002318.4,"D",NMID,ISACD,""))
  1. .. ;
  1. .. ;Not found - add partial entry
  1. .. I DAISA="" S DAISA=$$NEWC^BSTSDTS0()
  1. .. S BSTSC(9002318.4,DAISA_",",.08)=$G(ISACD)
  1. .. I NEWISA="" S BSTSC(9002318.4,DAISA_",",.03)="P"
  1. .. S BSTSC(9002318.4,DAISA_",",.07)=INMID ;Code Set
  1. .. S BSTSC(9002318.4,DAISA_",",.04)=CVRSN ;Version
  1. .. S BSTSC(9002318.4,DAISA_",",.11)="N" ;Up to Date
  1. .. S BSTSC(9002318.4,DAISA_",",.12)=DT ;Update Date
  1. .. S BSTSC(9002318.4,DAISA_",",1)=$G(@GL@("ISA",ISACT,1))
  1. .. ;
  1. .. ;Now add IsA pointer
  1. .. S DA(1)=CONCDA
  1. .. S DIC(0)="L",DIC="^BSTS(9002318.4,"_DA(1)_",5,",X=DAISA
  1. .. S DLAYGO=9002318.45 D ^DIC I +Y<0 Q
  1. .. ;
  1. .. ;Save IsA fields
  1. .. S DA(1)=CONCDA,DA=+Y,IENS=$$IENS^DILF(.DA)
  1. .. S BSTSC(9002318.45,IENS,".02")=$$EP2FMDT^BSTSUTIL($P($G(@GL@("ISA",ISACT,1,0)),U,2))
  1. ;
  1. I $D(BSTSC) D FILE^DIE("","BSTSC","ERROR")
  1. ;
  1. ;Save Terminology entries
  1. ;
  1. ;Synonyms/Preferred/FSN
  1. ;
  1. S STYPE="" F S STYPE=$O(@GL@("SYN",STYPE)) Q:STYPE="" S TCNT="" F S TCNT=$O(@GL@("SYN",STYPE,TCNT)) Q:TCNT="" D
  1. . ;
  1. . N TERM,TYPE,DESC,BSTST,ERROR,TMIEN,AIN
  1. . ;
  1. . ;Pull values
  1. . S TERM=$G(@GL@("SYN",STYPE,TCNT,1)) Q:TERM=""
  1. . ;
  1. . ;Quit if found
  1. . I $D(TLIST(TERM)) Q
  1. . S TLIST(TERM)=""
  1. . ;
  1. . S TYPE=$P($G(@GL@("SYN",STYPE,TCNT,0)),U,2)
  1. . S TYPE=$S(TYPE=1:"P",1:"S")
  1. . I TERM=$G(@GL@("FSN",1)) S TYPE="F"
  1. . S DESC=$P($G(@GL@("SYN",STYPE,TCNT,0)),U) Q:DESC=""
  1. . S AIN=$$EP2FMDT^BSTSUTIL($P($G(@GL@("SYN",STYPE,TCNT,0)),U,3))
  1. . ;
  1. . ;Look up
  1. . S TMIEN=$O(^BSTS(9002318.3,"D",INMID,DESC,""))
  1. . ;
  1. . ;No entry - create new
  1. . I TMIEN="" S TMIEN=$$NEWT^BSTSDTS0()
  1. . I TMIEN<0 Q
  1. . ;
  1. . ;Save/update fields
  1. . S BSTST(9002318.3,TMIEN_",",.02)=DESC
  1. . S BSTST(9002318.3,TMIEN_",",.09)=TYPE
  1. . S BSTST(9002318.3,TMIEN_",",1)=TERM
  1. . S BSTST(9002318.3,TMIEN_",",.04)="N"
  1. . S BSTST(9002318.3,TMIEN_",",.05)=CVRSN
  1. . S BSTST(9002318.3,TMIEN_",",.08)=INMID
  1. . S BSTST(9002318.3,TMIEN_",",.03)=CONCDA
  1. . S BSTST(9002318.3,TMIEN_",",.06)=AIN
  1. . S BSTST(9002318.3,TMIEN_",",.1)=DT
  1. . S BSTST(9002318.3,TMIEN_",",.11)="N"
  1. . D FILE^DIE("","BSTST","ERROR")
  1. . ;
  1. . ;Reindex - needed for custom indices
  1. . D
  1. .. NEW DIK,DA
  1. .. S DIK="^BSTS(9002318.3,",DA=TMIEN
  1. .. D IX^DIK
  1. ;
  1. ;Need to check for retired concepts again since it may have just been added
  1. S RTR=$$RET^BSTSDTS3(CONCDA,CVRSN,GL)
  1. ;
  1. Q $S($D(ERROR):"0^Update Failed",1:1)
  1. ;
  1. RUPDATE(NMID,ROUT) ;EP-Add/Update RXNORM
  1. ;
  1. ;RXNORM Only
  1. I $G(NMID)'=1552 Q 1
  1. ;
  1. N GL,CONCDA,BSTSC,INMID,ERROR,TCNT,I,CVRSN,ST,NROUT,TLIST,STYPE,RTR
  1. ;
  1. S GL=$NA(^TMP("BSTSCMCL",$J,1))
  1. S ROUT=$G(ROUT,"")
  1. ;
  1. ;Look for Concept Id
  1. I $P($G(@GL@("CONCEPTID")),U)="" Q 0
  1. ;
  1. ;Look for existing
  1. I $G(@GL@("DTSID"))="" Q 0
  1. S CONCDA=$O(^BSTS(9002318.4,"D",NMID,@GL@("DTSID"),""))
  1. ;
  1. ;Pull internal Code Set ID
  1. S INMID=$O(^BSTS(9002318.1,"B",NMID,"")) Q:INMID="" "0"
  1. ;
  1. ;Pull the current version
  1. S CVRSN=$$GET1^DIQ(9002318.1,INMID_",",.04,"I")
  1. ;
  1. ;Retired?
  1. I CONCDA]"",'$$RET^BSTSDTS3(CONCDA,CVRSN,GL) Q 0
  1. ;
  1. ;None found - create new
  1. I CONCDA="" S CONCDA=$$NEWC^BSTSDTS0()
  1. ;
  1. ;Verify entry found/created
  1. I +CONCDA<0 Q 0
  1. ;
  1. ;Get Revision Out
  1. S NROUT=$P(@GL@("CONCEPTID"),U,3) S:NROUT="" NROUT=ROUT
  1. ;
  1. ;Set up top level
  1. S BSTSC(9002318.4,CONCDA_",",.02)=$P(@GL@("CONCEPTID"),U) ;Conc ID
  1. S BSTSC(9002318.4,CONCDA_",",.08)=@GL@("DTSID") ;DTSID
  1. S BSTSC(9002318.4,CONCDA_",",.07)=INMID ;Code Set
  1. S BSTSC(9002318.4,CONCDA_",",.03)="N"
  1. S BSTSC(9002318.4,CONCDA_",",.05)=$$EP2FMDT^BSTSUTIL($P(@GL@("CONCEPTID"),U,2),1)
  1. S BSTSC(9002318.4,CONCDA_",",.06)=$$EP2FMDT^BSTSUTIL(NROUT,1)
  1. S BSTSC(9002318.4,CONCDA_",",.11)="N"
  1. S BSTSC(9002318.4,CONCDA_",",.04)=CVRSN
  1. S BSTSC(9002318.4,CONCDA_",",.12)=DT
  1. S BSTSC(9002318.4,CONCDA_",",1)=$G(@GL@("FSN",1))
  1. ;
  1. ;Save ISA
  1. I $D(@GL@("ISA"))>1 D
  1. . ;
  1. . N ISACT
  1. . S ISACT="" F S ISACT=$O(@GL@("ISA",ISACT)) Q:ISACT="" D
  1. .. ;
  1. .. ;Save/update each ISA
  1. .. ;
  1. .. ;First see if IsA code saved
  1. .. N DAISA,DA,IENS,DTSID,ISACD,NEWISA,DIC,Y,X,DLAYGO
  1. .. S ISACD=$P($G(@GL@("ISA",ISACT,0)),U) Q:ISACD=""
  1. .. S (NEWISA,DAISA)=$O(^BSTS(9002318.4,"D",NMID,ISACD,""))
  1. .. ;
  1. .. ;Not found - add partial entry
  1. .. I DAISA="" S DAISA=$$NEWC^BSTSDTS0()
  1. .. S BSTSC(9002318.4,DAISA_",",.08)=$G(ISACD)
  1. .. I NEWISA="" S BSTSC(9002318.4,DAISA_",",.03)="P"
  1. .. S BSTSC(9002318.4,DAISA_",",.07)=INMID ;Code Set
  1. .. S BSTSC(9002318.4,DAISA_",",.04)=CVRSN ;Version
  1. .. S BSTSC(9002318.4,DAISA_",",.11)="N" ;Up to Date
  1. .. S BSTSC(9002318.4,DAISA_",",.12)=DT ;Update Date
  1. .. S BSTSC(9002318.4,DAISA_",",1)=$G(@GL@("ISA",ISACT,1))
  1. .. ;
  1. .. ;Now add IsA pointer in current concept entry
  1. .. S DA(1)=CONCDA
  1. .. S DIC(0)="L",DIC="^BSTS(9002318.4,"_DA(1)_",5,",X=DAISA
  1. .. S DLAYGO=9002318.45 D ^DIC I +Y<0 Q
  1. .. ;
  1. .. ;Save additional IsA fields
  1. .. S DA(1)=CONCDA,DA=+Y,IENS=$$IENS^DILF(.DA)
  1. .. S BSTSC(9002318.45,IENS,".02")=$$EP2FMDT^BSTSUTIL($P($G(@GL@("ISA",ISACT,1,0)),U,2))
  1. ;
  1. ;Save Inverse Associations
  1. ;
  1. ;Clear out existing entries
  1. D
  1. . NEW AS
  1. . S AS=0 F S AS=$O(^BSTS(9002318.4,CONCDA,11,AS)) Q:'AS D
  1. .. NEW DA,DIK
  1. .. S DA(1)=CONCDA,DA=AS
  1. .. S DIK="^BSTS(9002318.4,"_DA(1)_",11," D ^DIK
  1. I $D(@GL@("IAS"))>1 D
  1. . ;
  1. . ;
  1. . NEW AS
  1. . S AS="" F S AS=$O(@GL@("IAS",AS)) Q:AS="" D
  1. .. ;
  1. .. NEW DIC,X,Y,DA,X,Y,IENS,DLAYGO
  1. .. S DA(1)=CONCDA
  1. .. S DIC(0)="L",DIC="^BSTS(9002318.4,"_DA(1)_",11,"
  1. .. S X=$P($G(@GL@("IAS",AS)),U) Q:X=""
  1. .. S DLAYGO=9002318.411 D ^DIC
  1. .. I +Y<0 Q
  1. .. S DA=+Y
  1. .. S IENS=$$IENS^DILF(.DA)
  1. .. S BSTSC(9002318.411,IENS,".02")=$P($G(@GL@("IAS",AS)),U,2)
  1. .. S BSTSC(9002318.411,IENS,".03")=$P($G(@GL@("IAS",AS)),U,3)
  1. .. S BSTSC(9002318.411,IENS,".04")=$P($G(@GL@("IAS",AS)),U,4)
  1. ;
  1. ;Update additional RxNorm fields
  1. D UPRSUB^BSTSDTS5(GL,CONCDA,.BSTSC)
  1. ;
  1. ;Save the entry
  1. I $D(BSTSC) D FILE^DIE("","BSTSC","ERROR")
  1. ;
  1. ;Reindex - needed for custom indices
  1. D
  1. . NEW DIK,DA
  1. . S DIK="^BSTS(9002318.4,",DA=CONCDA
  1. . D IX^DIK
  1. ;
  1. ;Save Terminology entries
  1. ;
  1. ;Synonyms/Preferred/FSN
  1. ;
  1. S STYPE="" F S STYPE=$O(@GL@("SYN",STYPE)) Q:STYPE="" S TCNT="" F S TCNT=$O(@GL@("SYN",STYPE,TCNT)) Q:TCNT="" D
  1. . ;
  1. . N TERM,TYPE,DESC,BSTST,ERROR,TMIEN,AIN
  1. . ;
  1. . ;Pull values
  1. . S TERM=$G(@GL@("SYN",STYPE,TCNT,1)) Q:TERM=""
  1. . ;
  1. . ;Limit to 244
  1. . S TERM=$E(TERM,1,244)
  1. . ;
  1. . ;Quit if found
  1. . I $D(TLIST(TERM)) Q
  1. . S TLIST(TERM)=""
  1. . ;
  1. . S TYPE=$P($G(@GL@("SYN",STYPE,TCNT,0)),U,2)
  1. . S TYPE=$S(TYPE=1:"P",1:"S")
  1. . I TERM=$G(@GL@("FSN",1)) S TYPE="F"
  1. . S DESC=$P($G(@GL@("SYN",STYPE,TCNT,0)),U) Q:DESC=""
  1. . S AIN=$$EP2FMDT^BSTSUTIL($P($G(@GL@("SYN",STYPE,TCNT,0)),U,3))
  1. . ;
  1. . ;Look up entry
  1. . S TMIEN=$O(^BSTS(9002318.3,"D",INMID,DESC,""))
  1. . ;
  1. . ;Entry not found - create new
  1. . I TMIEN="" S TMIEN=$$NEWT^BSTSDTS0()
  1. . I TMIEN<0 Q
  1. . ;
  1. . ;Save/update other fields
  1. . S BSTST(9002318.3,TMIEN_",",.02)=DESC
  1. . S BSTST(9002318.3,TMIEN_",",.09)=TYPE
  1. . S BSTST(9002318.3,TMIEN_",",1)=TERM
  1. . S BSTST(9002318.3,TMIEN_",",.04)="N"
  1. . S BSTST(9002318.3,TMIEN_",",.05)=CVRSN
  1. . S BSTST(9002318.3,TMIEN_",",.08)=INMID
  1. . S BSTST(9002318.3,TMIEN_",",.03)=CONCDA
  1. . S BSTST(9002318.3,TMIEN_",",.06)=AIN
  1. . S BSTST(9002318.3,TMIEN_",",.1)=DT
  1. . S BSTST(9002318.3,TMIEN_",",.11)="N"
  1. . D FILE^DIE("","BSTST","ERROR")
  1. . ;
  1. . ;Reindex - needed for custom indices
  1. . D
  1. .. NEW DIK,DA
  1. .. S DIK="^BSTS(9002318.3,",DA=TMIEN
  1. .. D IX^DIK
  1. ;
  1. ;Need to check for retired concepts again since it may have just been added
  1. S RTR=$$RET^BSTSDTS3(CONCDA,CVRSN,GL)
  1. ;
  1. Q $S($D(ERROR):"0^Update Failed",1:1)
  1. ;
  1. DILKP(OUT,BSTSWS) ;EP - DTS4 Search Call - Drug Ingredient Lookup
  1. ;
  1. N II,STS,SEARCH,STYPE,MAX,DTSID,NMID
  1. N BSTRT,BSCNT,SLIST,DLIST,RES,RCNT,CNT,ST
  1. ;
  1. S SEARCH=$G(BSTSWS("SEARCH"))
  1. S STYPE=$G(BSTSWS("STYPE"))
  1. S SLIST=$NA(^TMP("BSTSDET",$J)) ;Sorted List
  1. S DLIST=$NA(^TMP("BSTSCMCL",$J)) ;DTS Return List
  1. K @SLIST,@DLIST,@OUT
  1. ;
  1. ;Determine max to return
  1. S MAX=$G(BSTSWS("MAXRECS")) S:MAX="" MAX=25
  1. S BSTRT=+$G(BSTSWS("BCTCHRC")) S:BSTRT=0 BSTRT=1
  1. S BSCNT=+$G(BSTSWS("BCTCHCT")) S:BSCNT=0 BSCNT=MAX
  1. S NMID=$G(BSTSWS("NAMESPACEID"))
  1. ;
  1. ;Perform Lookup on Concept Id
  1. S STS=$$PTYDTS4^BSTSCMCL(.BSTSWS,.RES) I $G(BSTSWS("DEBUG")) W !!,STS
  1. ;
  1. ;Sort results (though there should only be one)
  1. S DTSID="" F S DTSID=$O(@DLIST@(DTSID)) Q:DTSID="" S @SLIST@(@DLIST@(DTSID),DTSID)=""
  1. ;
  1. ;Loop through results and retrieve detail
  1. S II="",RCNT=0 F S II=$O(@SLIST@(II),-1) Q:II="" D Q:RCNT
  1. . S DTSID="" F S DTSID=$O(@SLIST@(II,DTSID)) Q:DTSID="" D Q:RCNT
  1. .. ;
  1. .. N STATUS,CONC,ERSLT
  1. .. ;
  1. .. ;Update entry
  1. .. S BSTSWS("DTSID")=DTSID
  1. .. ;
  1. .. ;Clear result file
  1. .. K @DLIST
  1. .. ;
  1. .. ;Get Detail for concept
  1. .. S STATUS=$$DETAIL^BSTSCMCL(.BSTSWS,.ERSLT)
  1. .. I $G(BSTSWS("DEBUG")) W !!,"Detail Call Status: ",STATUS
  1. .. ;
  1. .. ;File Detail
  1. .. S STATUS=$$UPDATE^BSTSDTS0(NMID)
  1. .. I $G(BSTSWS("DEBUG")) W !!,"Update Call Status: ",STATUS
  1. .. ;
  1. .. ;Look to see if concept logged
  1. .. S CONC=$$CONC^BSTSDTS0(DTSID,.BSTSWS,1,1)
  1. .. I CONC]"" D Q
  1. ... S RCNT=$G(RCNT)+1,@OUT@(RCNT)=CONC_U_DTSID
  1. ;
  1. Q STS