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

TIUFA1.m

Go to the documentation of this file.
  1. TIUFA1 ; SLC/MAM - LM Template A (DDEFs by Attribute) Actions Add Entry, Change View ;7/1/97 20:55
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**2,5**;Jun 20, 1997
  1. ;
  1. ADD ; LM Template A action Create, LM Template J action Create
  1. ;Requires TIUFATTR, TIUFAVAL, TIUFSTRT. See HDR^TIUFA
  1. N DIC,DLAYGO,X,Y,FILEDA,NODE0,OPTFLDS,NEWSTAT,MSG1,MSG,TIUI,DA
  1. N DIK,TENDA,CNTCHNG,LINENO,FIELDS,DTOUT,DIRUT,DIROUT
  1. N TIUFY,TIUFNOD,TIUFFULL,TIUFXNOD,TIUFTMSG,TIUFTLST,NAME
  1. S TIUFXNOD=$G(XQORNOD(0))
  1. S VALMBCK=""
  1. SELECT S NAME=$$SELNAME^TIUFLF2() G:$D(DIRUT) ADDX
  1. D TYPELIST^TIUFLF7(NAME,0,0,.TIUFTMSG,.TIUFTLST) G:$D(DTOUT) ADDX
  1. I TIUFTMPL="J",TIUFTLST'["^O^" W !!,"Please enter a different Name; file already has Object with the same name.",! D PAUSE^TIUFXHLX G SELECT
  1. I TIUFTMPL'="J",TIUFTLST="" W !!,"Please enter a different Name; file already has entry of every type with the",!,"same name.",! D PAUSE^TIUFXHLX G SELECT
  1. S (DIC,DLAYGO)=8925.1,DIC(0)="L",X=""""_NAME_"""" D ^DIC
  1. I Y=-1 W !,"?? " W:TIUFTMPL="J" "Object Name must be different from all other object Names, Abbreviations,",!,"and Print Names.",! W:TIUFTMPL'="J" "Couldn't Add Entry; See IRM",! D PAUSE^TIUFXHLX G ADDX
  1. S FILEDA=+Y
  1. L +^TIU(8925.1,FILEDA):1 I '$T S MSG=" Another user has accessed this entry; please finish editing later" G ADDX
  1. D STUFFLDS^TIUFLF4(FILEDA)
  1. S FIELDS=";.04;.05;.06;.07;"
  1. I TIUFTMPL="J" S FIELDS=";.05;.06;"
  1. I TIUFWHO="N" S FIELDS=FIELDS_".13;"
  1. D ASKFLDS^TIUFLF1(FILEDA,FIELDS,0,.NEWSTAT)
  1. N TIUFCK D CHECK^TIUFLF3(FILEDA,0,1,.TIUFCK) ;No parent
  1. ; Entry is new orphan; don't worry about descendants, orphan, multiple parents, etc.
  1. K MSG
  1. F TIUI="T","S","A","B" D G:$D(MSG) ADDX
  1. . I $D(TIUFCK(TIUI)) S MSG1=TIUFCK(TIUI),MSG="Entry deleted: ",DA=FILEDA,DIK="^TIU(8925.1," D ^DIK
  1. G:$D(DTOUT) ADDX
  1. D OWNCHEC^TIUFLF8(FILEDA)
  1. S NODE0=$G(^TIU(8925.1,FILEDA,0))
  1. D AUPDATE^TIUFLA1(NODE0,FILEDA,.CNTCHNG,.LINENO) S:CNTCHNG VALMCNT=VALMCNT+1
  1. I 'CNTCHNG S MSG=" Entry added; Not in current View"
  1. I CNTCHNG S MSG=" Entry added" I LINENO<VALMBG!(LINENO>(VALMBG+VALM("LINES")-1)) S VALMBG=LINENO
  1. S VALMBCK="R"
  1. ADDX ;
  1. I $D(MSG) W !!,MSG,! W:$D(MSG1) MSG1,! H 2 H:$D(MSG1) 2
  1. L -^TIU(8925.1,+$G(FILEDA))
  1. I $D(DTOUT) S VALMBCK="Q" Q
  1. I $G(TIUFFULL) S VALMBCK="R" D RESET^TIUFXHLX
  1. Q
  1. ;
  1. CHANGE ; Template A action Change View
  1. N TIUFTMPA,TIUFTMPV,TIUFTMPS,TIUFXNOD,TIUFFULL,DTOUT,DIRUT,DIROUT
  1. S VALMBCK="R",TIUFXNOD=$G(XQORNOD(0))
  1. S TIUFTMPA=TIUFATTR,TIUFTMPV=TIUFAVAL,TIUFTMPS=TIUFSTRT
  1. K TIUFATTR,TIUFAVAL,TIUFSTRT
  1. ; Sets TIUFATTR,TIUFAVAL,TIUFSTRT if no ^:
  1. I TIUFTMPL="A" S X=^TMP("TIUF",$J,"SORTCM")_";ORD(101," D EN^XQOR I '$D(TIUFSTRT) S TIUFATTR=TIUFTMPA,TIUFAVAL=TIUFTMPV,TIUFSTRT=TIUFTMPS,VALMBCK="" G CHANX
  1. I TIUFTMPL="J" D SELSTART^TIUFLA S TIUFATTR=TIUFTMPA,TIUFAVAL=TIUFTMPV I '$D(TIUFSTRT) S TIUFSTRT=TIUFTMPS,VALMBCK="" G CHANX
  1. D INIT^TIUFA
  1. K VALMHDR S VALMBG=1
  1. CHANX ;
  1. I $D(DTOUT) S VALMBCK="Q" Q
  1. I $G(TIUFFULL) S VALMBCK="R" D RESET^TIUFXHLX
  1. Q
  1. ;