| 1 | IBDE3 ;ALB/CJM - ENCOUNTER FORM - IMP/EXP UTILITY -DISPLAYS TOOLKIT BLOCKS ;AUG 12,1993
 | 
|---|
| 2 |  ;;3.0;AUTOMATED INFO COLLECTION SYS;**14**;APR 24, 1997
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | HDR ;
 | 
|---|
| 5 |  S VALMHDR(1)="LIST OF TOOLKIT BLOCKS READY FOR IMPORT OR EXPORT"
 | 
|---|
| 6 |  S VALMHDR(3)="(** there are "_$S($O(^IBE(358,0)):"also",1:"no")_" forms in the work space **)"
 | 
|---|
| 7 |  Q
 | 
|---|
| 8 | ONENTRY ;
 | 
|---|
| 9 |  N LINE
 | 
|---|
| 10 |  S VALMCNT=$G(BLKCNT)
 | 
|---|
| 11 |  I $D(BLKLIST) S LINE=0 F  S LINE=$O(@BLKLIST@(LINE)) Q:'LINE  D FLDCTRL^VALM10(LINE)
 | 
|---|
| 12 |  Q
 | 
|---|
| 13 | ONEXIT ;
 | 
|---|
| 14 |  Q
 | 
|---|
| 15 |  ;
 | 
|---|
| 16 | IDXBLKS ;build an array of forms used by IBCLINIC for the list processor
 | 
|---|
| 17 |  N BLOCK,NODE,ORDER
 | 
|---|
| 18 |  K @BLKLIST
 | 
|---|
| 19 |  S (VALMCNT,ORDER)=0 F  S ORDER=$O(^IBE(358.1,"D",ORDER)) Q:'ORDER  S BLOCK=0 F  S BLOCK=$O(^IBE(358.1,"D",ORDER,BLOCK)) Q:'BLOCK  D
 | 
|---|
| 20 |  .I $D(^IBE(358.1,BLOCK,0)) D
 | 
|---|
| 21 |  ..S VALMCNT=VALMCNT+1,@BLKLIST@(VALMCNT,0)=$$DISPLAY(BLOCK,VALMCNT),@BLKLIST@("IDX",VALMCNT,VALMCNT)=BLOCK D FLDCTRL^VALM10(VALMCNT) ;set video for ID column
 | 
|---|
| 22 |  S BLKCNT=VALMCNT
 | 
|---|
| 23 |  Q
 | 
|---|
| 24 |  ;
 | 
|---|
| 25 | DISPLAY(BLOCK,ID) ;
 | 
|---|
| 26 |  N NODE,RET
 | 
|---|
| 27 |  S RET=$J(ID,3)_"  "
 | 
|---|
| 28 |  S NODE=$G(^IBE(358.1,BLOCK,0))
 | 
|---|
| 29 |  S RET=RET_$$PADRIGHT^IBDFU($P(NODE,"^",1),30)_"  "_$P(NODE,"^",13)
 | 
|---|
| 30 |  Q RET
 | 
|---|
| 31 |  ;
 | 
|---|
| 32 | ADD ;adds a block to the work space
 | 
|---|
| 33 |  N OLDBLOCK,NEWBLOCK
 | 
|---|
| 34 |  D FULL^VALM1
 | 
|---|
| 35 |  S VALMBCK="R"
 | 
|---|
| 36 |  S OLDBLOCK=$$SELECT Q:'OLDBLOCK
 | 
|---|
| 37 |  S NEWBLOCK=$$COPYBLK^IBDFU2(OLDBLOCK,"",357.1,358.1,"","",1)
 | 
|---|
| 38 |  I NEWBLOCK K DIE,DR,DA S DIE="^IBE(358.1,",DA=NEWBLOCK,DR="1;" D ^DIE K DIE,DR,DA
 | 
|---|
| 39 |  D IDXBLKS
 | 
|---|
| 40 |  Q
 | 
|---|
| 41 |  ;
 | 
|---|
| 42 | DELETE ;deletes a block from the work space
 | 
|---|
| 43 |  N PICK,FORM,IBTKBLK
 | 
|---|
| 44 |  S IBTKBLK=1 ;can't delete tk blocks unless IBTKBLK
 | 
|---|
| 45 |  D EN^VALM2($G(XQORNOD(0)))
 | 
|---|
| 46 |  S PICK="" F  S PICK=$O(VALMY(PICK)) Q:'PICK  S BLOCK=+$G(@VALMAR@("IDX",PICK,PICK)) I BLOCK,$$RUSURE^IBDFU5($P($G(^IBE(358.1,BLOCK,0)),"^")) D DLTBLK^IBDFU3(BLOCK,"",358.1)
 | 
|---|
| 47 |  S VALMBCK="R"
 | 
|---|
| 48 |  D IDXBLKS
 | 
|---|
| 49 |  Q
 | 
|---|
| 50 | EDIT ;allows the export notes of a block to be edited
 | 
|---|
| 51 |  N PICK,BLOCK
 | 
|---|
| 52 |  D EN^VALM2($G(XQORNOD(0)))
 | 
|---|
| 53 |  D FULL^VALM1
 | 
|---|
| 54 |  S PICK="" F  S PICK=$O(VALMY(PICK)) Q:'PICK  S BLOCK=+$G(@VALMAR@("IDX",PICK,PICK)) D:BLOCK
 | 
|---|
| 55 |  .K DIE,DR,DA S DIE="^IBE(358.1,",DR="1;",DA=BLOCK D ^DIE K DIE,DA,DR
 | 
|---|
| 56 |  S VALMBCK="R"
 | 
|---|
| 57 |  D IDXBLKS
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 | IMPORT ;allows the user to pick a block from the imp/exp files, then import it
 | 
|---|
| 60 |  N PICK,BLOCK,NEWBLOCK,IBTKBLK,NAME
 | 
|---|
| 61 |  S IBTKBLK=1
 | 
|---|
| 62 |  D EN^VALM2($G(XQORNOD(0)))
 | 
|---|
| 63 |  D FULL^VALM1
 | 
|---|
| 64 |  S PICK="" F  S PICK=$O(VALMY(PICK)) Q:'PICK  S BLOCK=+$G(@VALMAR@("IDX",PICK,PICK)) D:BLOCK
 | 
|---|
| 65 |  .S NAME=$$NEWNAME($P($G(^IBE(358.1,BLOCK,0)),"^"))
 | 
|---|
| 66 |  .Q:NAME=""
 | 
|---|
| 67 |  .S NEWBLOCK=$$COPYBLK^IBDFU2(BLOCK,$$TKFORM^IBDFU2C,358.1,357.1,"","",$$TKORDER^IBDF13,NAME)
 | 
|---|
| 68 |  .D:$G(NEWBLOCK) DLTBLK^IBDFU3(BLOCK,"",358.1)
 | 
|---|
| 69 |  S VALMBCK="R"
 | 
|---|
| 70 |  D IDXBLKS
 | 
|---|
| 71 |  D UPDATE^IBDECLN(1) ;clean up qualifiers (with messages)
 | 
|---|
| 72 |  Q
 | 
|---|
| 73 | VIEW ;allows the export notes of a form to be edited
 | 
|---|
| 74 |  N PICK,BLOCK,IBARY,IBHDRRTN
 | 
|---|
| 75 |  D EN^VALM2($G(XQORNOD(0)),"S")
 | 
|---|
| 76 |  S PICK="" F  S PICK=$O(VALMY(PICK)) Q:'PICK  S BLOCK=+$G(@VALMAR@("IDX",PICK,PICK)) D
 | 
|---|
| 77 |  .S IBHDRRTN="D VIEWHDR^IBDE3"
 | 
|---|
| 78 |  .S IBARY="^IBE(358.1,"_BLOCK_",1)"
 | 
|---|
| 79 |  .D EN^VALM("IBDE TEXT DISPLAY")
 | 
|---|
| 80 |  S VALMBCK="R"
 | 
|---|
| 81 |  Q
 | 
|---|
| 82 | VIEWHDR ;
 | 
|---|
| 83 |  S VALMHDR(1)="Export Notes For "_$P($G(^IBE(358.1,BLOCK,0)),"^")_" Block"
 | 
|---|
| 84 |  Q
 | 
|---|
| 85 | SELECT() ;allows the user to select a form, then a block from it
 | 
|---|
| 86 |  N IBFORM,IBBLK
 | 
|---|
| 87 |  S (IBFORM,IBBLK)=""
 | 
|---|
| 88 |  K DIR S DIR(0)="S^1:TOOLKIT BLOCK;2:BLOCK FROM A TOOLKIT FORM;3:BLOCK FROM A FORM NOT IN THE TOOLKIT"
 | 
|---|
| 89 |  S DIR("A")="What type of block do you want to export?"
 | 
|---|
| 90 |  D ^DIR K DIR
 | 
|---|
| 91 |  Q:(Y=-1)!($D(DIRUT)) ""
 | 
|---|
| 92 |  I Y=1 D
 | 
|---|
| 93 |  .S IBFORM=$$TKFORM^IBDFU2C
 | 
|---|
| 94 |  E  S IBFORM=$$SLCTFORM^IBDFU4($S(Y=2:1,1:0))
 | 
|---|
| 95 |  I IBFORM D
 | 
|---|
| 96 |  .W !!,"NOW CHOOSE THE BLOCK TO COPY!",!
 | 
|---|
| 97 |  .S IBBLK=$$SLCTBLK^IBDFU8(IBFORM)
 | 
|---|
| 98 |  Q IBBLK
 | 
|---|
| 99 |  ;
 | 
|---|
| 100 | NEWNAME(OLDNAME) ;asks the user to select uniqued toolkit block name
 | 
|---|
| 101 |  ;returns "" if unsuccessfull, else the blk name
 | 
|---|
| 102 |  ;shows OLDNAME as the default if defined
 | 
|---|
| 103 |  ;
 | 
|---|
| 104 |  N NAME,FOUND,TKBLK,ORDER S NAME=""
 | 
|---|
| 105 |  K DIR S DIR(0)="357.1,.01A",DIR("A")="New Toolkit Block Name: ",DIR("?")="Enter a unique name for the toolkit block up to 30 characters"
 | 
|---|
| 106 |  S DIR("B")="" I $G(OLDNAME)'="" S DIR("B")=OLDNAME
 | 
|---|
| 107 |  F  D  Q:'FOUND
 | 
|---|
| 108 |  .S FOUND=0
 | 
|---|
| 109 |  .D ^DIR I $D(DIRUT) S Y="" Q
 | 
|---|
| 110 |  .S ORDER=0 F  S ORDER=$O(^IBE(357.1,"D",ORDER)) Q:ORDER=""  S TKBLK=$O(^IBE(357.1,"D",ORDER,0)) Q:'TKBLK   I $P($G(^IBE(357.1,TKBLK,0)),"^")=Y W !,"There is already a toolkit block with that name! The name should be unique." S FOUND=1 Q
 | 
|---|
| 111 |  S:'FOUND NAME=Y
 | 
|---|
| 112 |  K DIR
 | 
|---|
| 113 |  Q NAME
 | 
|---|