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

LEXAR7.m

Go to the documentation of this file.
  1. LEXAR7 ;ISL/KER - Look-up Response (MAIL) ;04/21/2014
  1. ;;2.0;LEXICON UTILITY;**9,25,73,80**;Sep 23, 1996;Build 10
  1. ;
  1. ; Global Variables
  1. ; ^TMP("LEXMSG") SACC 2.3.2.5.1
  1. ; ^TMP("LEXSEND") SACC 2.3.2.5.1
  1. ;
  1. ; External References
  1. ; HOME^%ZIS ICR 10086
  1. ; ^%ZTLOAD ICR 10063
  1. ; ^DIK ICR 10013
  1. ;
  1. ; This routines sends a Mailman message containing the Unresolved
  1. ; Narratives and Comments stored in file 757.06 to the Field Office
  1. ; at G.LEXUNR@ISC-SLC.VA.GOV. Once sent, the Unresolved Narratives
  1. ; and comments are purged from file 757.06. Both the Unresolved
  1. ; Narratives and comments are used to update the Lexicon Utility.
  1. ;
  1. Q
  1. SEND ; Task MAILMAN to Send Unresolved Narratives to the ISC
  1. I +($$TOT^LEXAR6)'>49!('$L($G(^LEX(757.06,0))))!(+($P($G(^LEX(757.06,0)),"^",4))<1) G SENDQ
  1. G:$D(^TMP("LEXSEND")) SENDQ S ^TMP("LEXSEND",$J)=""
  1. N X,Y,ZTQUEUED,ZTREQ,ZTSK,ZTDESC,ZTDTH,ZTIO,ZTRTN,%,%X,%Y
  1. S ZTRTN="ISC^LEXAR7",ZTDESC="Sending Narratives to IRMFO",ZTIO="",ZTDTH=$H D ^%ZTLOAD,HOME^%ZIS
  1. SENDQ ; End of Send
  1. K ZTSK,ZTDESC,ZTDTH,ZTIO,ZTRTN
  1. Q
  1. DUMP ; Dump Narratives to Developer
  1. D HOME^%ZIS S U="^" Q:+($G(DUZ))=0 Q:+($O(^LEX(757.06,0)))'>0
  1. S ^TMP("LEXSEND",$J)="" K ^TMP("LEXMSG",$J) D ISC K ^TMP("LEXSEND",$J)
  1. Q
  1. ISC ; Create MAILMAN Message for the IRMFO
  1. G:'$D(^TMP("LEXSEND")) ISCQ G:$D(^TMP("LEXMSG")) ISCQ
  1. ;
  1. ; LEXT Narrative Type
  1. ; LEXN Narrative
  1. ; LEXA # of Narratives Added to Message
  1. ;
  1. N DA,DIC,DIK,DIE,X,Y,LEXT,LEXN,LEXA S:$D(ZTQUEUED) ZTREQ="@" D INM S DA=0,DIK="^LEX(757.06,",LEXA=0
  1. F S DA=$O(^LEX(757.06,DA)) Q:+DA=0 D
  1. . S LEXT="UNR"
  1. . I '$D(^LEX(757.06,DA,1)),'$D(^LEX(757.06,DA,2)),'$D(^LEX(757.06,DA,3)),$D(^LEX(757.06,DA,4)) S LEXT="COM"
  1. . Q:+($G(^LEX(757.06,DA,99)))'>0
  1. . S LEXN=$P($G(^LEX(757.06,DA,0)),"^",1) Q:'$L(LEXN) Q:'$D(^LEX(757.06,"B",$E(LEXN,1,30),DA))
  1. . Q:+($G(LEXA))>50
  1. . D ADD(" ",LEXT) S LEXA=LEXA+1
  1. . I $L($P($G(^LEX(757.06,DA,0)),U,1)) D
  1. . . I LEXT="UNR" D ADD("NAR",$P($G(^LEX(757.06,DA,0)),U,1,2)) Q
  1. . . D ADD("EXP",$P($G(^LEX(757.06,DA,0)),U,1)) Q
  1. . D:$L($P($G(^LEX(757.06,DA,0)),U,3)) ADD("SCH",$P($G(^LEX(757.06,DA,0)),U,3))
  1. . D:$L($P($G(^LEX(757.06,DA,0)),U,4)) ADD("FND",$P($G(^LEX(757.06,DA,0)),U,4))
  1. . D:$L($P($G(^LEX(757.06,DA,1)),U,1)) ADD("APP",$P($G(^LEX(757.06,DA,1)),U,1))
  1. . D:$L($P($G(^LEX(757.06,DA,1)),U,2)) ADD("SER",$P($G(^LEX(757.06,DA,1)),U,2))
  1. . D:$L($P($G(^LEX(757.06,DA,1)),U,3)) ADD("LOC",$P($G(^LEX(757.06,DA,1)),U,3))
  1. . D:$L($P($G(^LEX(757.06,DA,2)),U,1)) ADD("FLN",$P($G(^LEX(757.06,DA,2)),U,1))
  1. . D:$L($P($G(^LEX(757.06,DA,2)),U,2)) ADD("IDX",$P($G(^LEX(757.06,DA,2)),U,2))
  1. . D:$L($P($G(^LEX(757.06,DA,2)),U,3)) ADD("SCT",$P($G(^LEX(757.06,DA,2)),U,3))
  1. . D:$L($G(^LEX(757.06,DA,3))) ADD("SCR",$G(^LEX(757.06,DA,3)))
  1. . D:$L($P($G(^LEX(757.06,DA,4)),U,1)) ADD("IEN",$P($G(^LEX(757.06,DA,4)),U,1))
  1. . D:$L($P($G(^LEX(757.06,DA,4)),U,2)) ADD("COM",$P($G(^LEX(757.06,DA,4)),U,2))
  1. . I +($G(DA))>0 K ^LEX(757.06,+($G(DA)),99) D:$D(^LEX(757.06,+($G(DA)),0)) ^DIK
  1. D N0,MAIL S LEXA=$$TOT^LEXAR6
  1. ISCQ ; End of Send MAILMAN Message
  1. K LEXA,LEXN,LEXT S:$D(ZTQUEUED) ZTREQ="@"
  1. Q
  1. ADD(LEXI,LEXS) ; Add text to message
  1. ;
  1. ; LEXI Narrative Segment ID
  1. ; LEXS Segment String
  1. ; LEXC Counter/IEN for ^TMP("LEXMSG",$J,LEXC)
  1. ;
  1. N LEXC S LEXC=+($G(^TMP("LEXMSG",$J,0)))+1,^TMP("LEXMSG",$J,0)=LEXC,^TMP("LEXMSG",$J,LEXC)=LEXI
  1. S:$G(LEXS)'="" ^TMP("LEXMSG",$J,LEXC)=^TMP("LEXMSG",$J,LEXC)_"^"_LEXS
  1. Q
  1. MAIL ; MAILMAN
  1. N XCNP,XMDUZ,XMSUB,XMTEXT,XMY,XMZ,Y,LEXADR S LEXADR=$$ADR^LEXU G:'$L(LEXADR) MAILQ
  1. G:'$D(^TMP("LEXMSG",$J)) MAILQ G:+($G(LEXA))=0 MAILQ G:+($G(^TMP("LEXMSG",$J,0)))=0 MAILQ
  1. K XMZ N DIFROM S XMSUB="Unresolved Narratives - "_LEXA_" items"
  1. S XMY(("G.LEXUNR@"_LEXADR))="",XMTEXT="^TMP(""LEXMSG"",$J,",XMDUZ=.5
  1. ; Patch 57, discontinue the transmission of Unresolved Narratives
  1. ; D ^XMD
  1. MAILQ ; End of MAILMAN
  1. K ^TMP("LEXSEND",$J),^TMP("LEXMSG",$J),DIFROM,LEXA,XCNP,XMDUZ,XMZ,XMSUB,XMY,XMTEXT,XMDUZ,XMSCR,REF, Q
  1. INM ; Initialize Message
  1. N LEXI S (LEXI,^TMP("LEXMSG",$J,0))=0 F S LEXI=$O(^TMP("LEXMSG",$J,LEXI)) Q:+LEXI=0 K ^TMP("LEXMSG",$J,LEXI)
  1. Q
  1. N0 ; ^LEX(757.06,0)
  1. N LEX3,LEX4,DA S (LEX3,LEX4,DA)=0 F S DA=$O(^LEX(757.06,DA)) Q:+DA=0 S LEX3=DA,LEX4=LEX4+1
  1. S LEX3=+LEX3,LEX4=+LEX4 S:+LEX3=0 LEX3="" S:+LEX4=0 LEX4="" S ^LEX(757.06,0)=$P($G(^LEX(757.06,0)),"^",1,2)_"^"_LEX3_"^"_LEX4
  1. Q
  1. CLR ; Clear all narratives
  1. N DA,DIK S DA=0,U="^",DIK="^LEX(757.06," F S DA=$O(^LEX(757.06,DA)) Q:+DA=0 D ^DIK
  1. N LEXN S LEXN=$P(^LEX(757.06,0),"^",1,2)_"^^" S ^LEX(757.06,0)=LEXN
  1. Q