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

DIWE1.m

Go to the documentation of this file.
  1. DIWE1 ;SFISC/GFT-WORD PROCESSING FUNCTION ;4JUN2008
  1. ;;22.2;VA FileMan;;Jan 05, 2016;Build 42
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
  1. ;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
  1. ;;Licensed under the terms of the Apache License, Version 2.0.
  1. ;
  1. ;**CCO/NI THIS ROUTINE THOROUGHLY CHANGED DIALOGS #9150-9175 ARE NOW USED AS THE OPTIONS
  1. G X:$D(DTOUT) I '$D(DWL) S I=DWLC,J=$S(I<11:1,1:I-8) W:J>1 ?7,". . .",!?7,". . ." D LL
  1. 1 G X:$D(DTOUT) D G X:'$D(X)
  1. .N DIR,DIRUT,DDS
  1. .S DIR(0)="FO",DIR("A")=$$EZBLD^DIALOG(8149),DIR("?")="^D HELP^DIWE1" ;**CCO/NI READ 'EDIT OPTION:'
  1. .D ^DIR I X="."!$D(DIRUT) K X
  1. LC I X?1L S X=$$UP^DILIBF(X)
  1. S J="^DOPT(""DIWE1""," I X?1U F I=1:1:26 S DIWEX1=$C(64+I) I DWO[DIWEX1,$F($$EZBLD^DIALOG(I+9150),X)=2 S ^DISV(DUZ,J)=I G OPT
  1. I X=" ",$D(^DISV(DUZ,J)) S DIWEX1=$C(64+^(J)) I DWO[DIWEX1 W ! G OPT
  1. I X?1N.N S DIWEX1="E" D LN G E2:X
  1. D HELP G 1
  1. ;
  1. HELP ;CALLED FROM DIR READER
  1. W !?5,$$EZBLD^DIALOG(9149)
  1. I X?2"?".E F I=1:1:26 S J=$C(64+I) I DWO[J W !?10,$$EZBLD^DIALOG(I+9150)
  1. W !?5,$$EZBLD^DIALOG(9150) Q
  1. ;
  1. OPT Q:$D(DTOUT) S X=$$PROMPT I '$X W $E(X)
  1. E I $F($$EZBLD^DIALOG($A(DIWEX1)-64+9150),X)'=2 W !,$E(X)
  1. W $E(X,2,99) G @DIWEX1
  1. A ;;Add -- DIALOG #9151
  1. D ^DIWE2 S (DWL,DWLC)=DWI,@(DIC_"0)=DWLC") G 1:DWLC,X
  1. B ;;Break #9152
  1. D RD G B^DIWE4
  1. C ;;Change #9153
  1. G C^DIWE2
  1. D ;;Delete #9154
  1. D RD G D^DIWE3
  1. E ;;Edit #9155
  1. D RD G OPT:X="",1:X=U,LC:X?1A,E2
  1. G ;;Get Data from Another Source #9157
  1. G X^DIWE5
  1. I ;;Insert #9159
  1. D RD G I^DIWE2
  1. J ;;Join #9160
  1. D RD G J^DIWE4
  1. L ;;List #9162
  1. S DIWELAST=$S($G(DIWELAST):DIWELAST,1:1) W DIWELAST_"//" R X:DTIME S:'$T X=U,DTOUT=1 S:X="" X=DIWELAST D LN G LIST:X,1:X=U W !,$$EZBLD^DIALOG(9162) G L
  1. M ;;Move #9163
  1. D RD G M^DIWE3
  1. P ;;Print #9166
  1. R X:DTIME S:'$T X=U,DTOUT=1 S:X="" X=1 D LN,^DIWE4:X G 1
  1. R ;;Repeat #9168
  1. D RD G R^DIWE3
  1. S ;;Search #9169
  1. G S^DIWE2
  1. T ;;Transfer #9170
  1. D RD,Z^DIWE3 G DIWE1
  1. U ;;Utilities #9171
  1. D ^DIWE11 G 1
  1. Y ;;Y;Y-Programmer Edit #9175
  1. G Y^DIWE4
  1. ;;
  1. PROMPT() Q $$EZBLD^DIALOG($A(DIWEX1)-64+9150.1)
  1. ;
  1. E2 S Y=^(0) S:Y="" Y=" " W !,$J(DWL,3)_">"_Y,! S DIRWP=1 D RW^DIR2 K DIRWP G E2:X?1."?",X:X?1."^"
  1. TAB I X[$C(9) S X=$P(X,$C(9),1)_$C(124)_"TAB"_$C(124)_$P(X,$C(9),2,999) G TAB
  1. S:X]"" ^(0)=X
  1. ;check if line is greater than max, DWLW, break line up and treat as an insert
  1. I $L(X)>DWLW D
  1. . N I,J,DIC1
  1. . K ^UTILITY($J,"W") S DIC1=DIC,DIC="^UTILITY($J,""W"",",@(DIC_"0)")=""
  1. . F DWI=1:1 Q:$L(X)'>DWLW S J=$F(X," ",DWLW-7),J=$S(J<1!(J>DWLW):DWLW,1:J),@(DIC_"DWI,0)")=$E(X,1,J-1),X=$E(X,J,$L(X))
  1. . S @(DIC_"DWI,0)")=X
  1. . W !,$$EZBLD^DIALOG(8123,DWI-1)
  1. . X "F J=DWL+1:1:DWLC S DWI=DWI+1,"_DIC_"DWI,0)="_DIC1_"J,0) W ""."""
  1. . S I=DWL X "F J=1:1 Q:'$D("_DIC_"J,0)) S "_DIC1_"I,0)=^(0),I=I+1 W ""."""
  1. . S DWLC=I-1,DIC=DIC1 K ^UTILITY($J,"W")
  1. E I X="@" S (DW1,DW2)=DWL W $$EZBLD^DIALOG(8015) D DEL^DIWE3 ;*CCO/NI "DELETED"
  1. W ! S DIWEX1="E" G OPT
  1. ;
  1. RD R X:DTIME S:'$T DTOUT=1 I X?1."?" D G RD
  1. .N I S I(1)=1,I(2)=DWLC W !?5,$$EZBLD^DIALOG(9148,.I),!!,$$PROMPT ;**CCO/NI "ENTER LINE 1-99"
  1. LN I U[X!(X=".") S X=U Q
  1. Q:DIWEX1="E"&(X?1A) I 'DWLC,I<27,I-13 S X=U W " ",$$EZBLD^DIALOG(8148),! Q ;**CCO/NI 'NO LINES!'
  1. I "+- "[$E(X),X?1P.N,$D(DWL) S:X?1P X=X_1 S X=X+DWL W " "_X
  1. E S X=+X
  1. I (DIWEX1="I"!(DIWEX1="R")&(X=0))!$D(@(DIC_"X,0)")) S DWL=X Q
  1. S X="" G LNQ^DIWE5
  1. ;
  1. X K DIWELAST
  1. G X^DIWE
  1. ;
  1. LIST W " "_$$EZBLD^DIALOG(8117)_DWLC_"// " R I:DTIME S:'$T DTOUT=1 S I=$S(I="":DWLC,1:I) I I,I>DWLC!(I<1) S I=DWLC
  1. S J=X,DIWELAST=$S(DWLC=I:1,1:I) D LL G 1
  1. LL X "F J=J:1:I W !,$J(J,3)_"">""_"_DIC_"J,0)"