Annotation of freem_fileman/DIWE5.m, revision 1.1.1.1

1.1       snw         1: DIWE5  ;SFISC/GFT-WP, AUX FUNCTIONS ;8/3/94  1:11 PM
                      2:        ;;21.0;VA FileMan;;Dec 28, 1994
                      3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
                      4:        ;
                      5: LNQ    ;
                      6:        W !,"ANSWER WITH A LINE NUMBER ("_(I'=6)_$P("-"_DWLC,U,DWLC>1)_")"
                      7:        I $D(DWL) W !?9,"OR A SPACE TO MEAN THE CURRENT LINE ("_DWL_")" W:DWL>2 !?9,"OR '-' TO MEAN LINE ",DWL-1,", '-2' TO MEAN ",DWL-2,", ",$P("'+' TO MEAN "_(DWL+1)_", ",U,DWL<DWLC)_"ETC."
                      8:        W ! Q
                      9:        ;
                     10: WL     W !,"INITIALS:",! S X=$P(DIC,"(",1) Q:$D(@X)<9  S X=$O(@(X_"(0)"))-1,I=0 F  S X=$O(^(X)) Q:X=""  W X,!
                     11:        S X=-1 Q
                     12: NL     W !,"TEXT NAMES:",! S %T2="",I=0 F  S %T2=$O(@(DW_")")) Q:%T2=""  W %T2,?20,^(%T2,0),!
                     13:        K %T2 Q
                     14:        ;
                     15: F      ;
                     16:        W !!,"Line WIDTH: "_DWLW_"//" R X:DTIME S DWLW=$S(X<10:DWLW,X>255:DWLW,1:X\1)
                     17:        W !,"PACK "_$S(DWPK:"ON",1:"OFF")_"//" R X:DTIME S DWPK=$S(X="ON":1,1:0)
                     18:        Q
                     19: X      D ASK^DIWE11 Q:X=""  S DIWL=X,(%,%B)="" X ^%ZOSF("EOFF")
                     20: ENT    I '$D(DIWL) S DIWL=245
                     21: A      R X#245:30 E  I '$L(X) D S:$L(%B) G XQ^DIWE11
                     22:        S:X="" X=" " I X?.ANP S Y=X G D
                     23:        S I=0,Y=""
                     24: C      S I=I+1 I $E(X,I,999)?.ANP S Y=Y_$E(X,I,999) G D
                     25:        S %=$E(X,I),%0=$A(%)
                     26:        I %?1C S %="" I %0=9 S %=$E("         ",1,9-($L(Y)-($L(Y)\9*9)))
                     27:        S Y=Y_% D S:$L(Y)>DIWL I ":27:13:"[(":"_%0_":") D S
                     28:        G C
                     29: D      D S G D:$L(Y)'<DIWL S %B=Y,Y="" G A
                     30: S      S:$L(%B) %B=%B_$S($E(Y)=" ":"",1:" ") S %=%B_Y,%2=$L(%) Q:'%2  S Y=""
                     31:        I %2>DIWL F %1=DIWL:-1 I %1<$S(DIWL-12>0:DIWL-12,1:4)!(" -"[$E(%,%1)) S Y=$E(%,%1+1+$S($E(%,%1+1)=" ":1,1:0),999),%=$E(%,1,%1-$S($E(%,%1)=" ":1,1:0)) Q
                     32:        S %B="",DWLC=DWLC+1,@(DIC_"DWLC,0)")=%
                     33:        Q
                     34: TQ     ;
                     35:        W !?4,"IF YOU WANT TO USE TEXT FROM THE '"_J_"' FIELD",!?4,"OF ANOTHER '"
                     36:        W I,"' ENTRY, TYPE THE NAME OF THAT ENTRY",!?4,"OTHERWISE, "
                     37:        W "USE A COMPUTED-FIELD EXPRESSION TO DESIGNATE SOME W-P TEXT",!
                     38:        G Z^DIWE3
                     39:        ;
                     40: H      ;
                     41:        N I,%,DIWED,Y,Z
                     42:        F I=0:1 Q:'$G(@("D"_I))  S DIWE(I)=@("D"_I)
                     43:        S %="",Z=X F  S %=$O(X(%)) Q:%=""  S Z(%)=X(%)
                     44:        S I=1 F  S %=$O(X(I)) Q:$F(X(%),"D O")!(%="")
                     45:        G Q:%=""
                     46:        S Y(%)=$E(X(%),1,$F(X(%),"D O")-1)_" Q:X=U!$D(DTOUT)",%(%)=X(%),X(%)=Y(%)
                     47:        S %=X X "N X",%
                     48:        F I=0:1 Q:'$G(DIWED(I))  S @("D"_I)=$G(DIWED(I))
                     49:        S X=Z,%="" F  S %=$O(Z(%)) Q:%=""  S X(%)=Z(%)
                     50: Q      K %,DIR,DIRUT,DUOUT Q
                     51: O      ;
                     52:        W !,$J(D,3),">",X
                     53:        I D#15=0 S DIR(0)="E" D ^DIR
                     54:        Q
                     55:        ;
                     56: IQ     ;
                     57:        I $D(DC) W:$D(^DD(+$P(DC,U,2),.01,3)) !?4,^(3),! X:$D(^(4)) ^(4) F %=0:0 S %=$O(^DD(+$P(DC,U,2),.01,21,%)) Q:%'>0  W !,^(%,0)
                     58:        W !!,"You are ready to enter a line of text.",!,"If you have no text to enter,just ",$S(DIWPT="":"press the return key.",1:"type in """_DIWPT_"""."),!
                     59:        W "Type 'CONTROL-I' (or TAB key) to insert tabs.",!
                     60:        W "When text is output, these formatting rules will apply:"
                     61:        W !," A)  Lines containing only punctuation characters, or lines containing tabs",!?5,"will stand by themselves, i.e., no wrap-around."
                     62:        W !," B)  Lines beginning with spaces will start on a new line."
                     63:        W !," C)  Expressions between '|' characters will be evaluated as"
                     64:        W !?5,"'computed-field expressions and then be printed as evaluated"
                     65:        W !?5,"thus '|NAME|' would cause the current name to be inserted in the text."
                     66:        W !!,$C(7),"Want to see a list of allowable formatting 'WINDOWS'" S %=2 D YN^DICN Q:%-1
                     67:        W !?5,"SPECIAL FORMATTING INCLUDES: "
                     68: FN     S %=15 F  S %=$O(^DD("FUNC",%)) Q:%>97  I $D(^(%,10)) W !," |"_$P(^(0),U,1)_$P("(ARGUMENT)",U,$S('$D(^(3)):1,1:^(3)'=0))_"|",?25 W:$D(^(9)) ^(9)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>