| 1 | LRSRVR4 ;DALOI/JMC -LAB DATA SERVER, CONT'D - UUENCODE UTILITY ; Dec 14, 2004
 | 
|---|
| 2 |  ;;5.2;LAB SERVICE;**303**;Sep 27, 1994
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 | UUEN(STR) ; Uuencode string passed in.
 | 
|---|
| 6 |  N J,K,LEN,LRI,LRX,S,TMP,X,Y
 | 
|---|
| 7 |  S TMP="",LEN=$L(STR)
 | 
|---|
| 8 |  F LRI=1:3:LEN D
 | 
|---|
| 9 |  . S LRX=$E(STR,LRI,LRI+2)
 | 
|---|
| 10 |  . I $L(LRX)<3 S LRX=LRX_$E("   ",1,3-$L(LRX))
 | 
|---|
| 11 |  . S S=$A(LRX,1)*256+$A(LRX,2)*256+$A(LRX,3),Y=""
 | 
|---|
| 12 |  . F K=0:1:23 S Y=(S\(2**K)#2)_Y
 | 
|---|
| 13 |  . F K=1:6:24 D
 | 
|---|
| 14 |  . . S J=$$DEC^XLFUTL($E(Y,K,K+5),2)
 | 
|---|
| 15 |  . . S TMP=TMP_$C(J+32)
 | 
|---|
| 16 |  S TMP=$C(LEN+32)_TMP
 | 
|---|
| 17 |  Q TMP
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 |  ;
 | 
|---|
| 20 | ENCODE(LRSTR) ; Encode a string, keep remainder for next line
 | 
|---|
| 21 |  ; Call with LRSTR by reference, Remainder returned in LRSTR
 | 
|---|
| 22 |  ;
 | 
|---|
| 23 |  S LRQUIT=0,LRLEN=$L(LRSTR)
 | 
|---|
| 24 |  F  D  Q:LRQUIT
 | 
|---|
| 25 |  . I $L(LRSTR)<45 S LRQUIT=1 Q
 | 
|---|
| 26 |  . S LRX=$E(LRSTR,1,45)
 | 
|---|
| 27 |  . S LRNODE=LRNODE+1,^TMP($J,"LRDATA",LRNODE)=$$UUEN(LRX)
 | 
|---|
| 28 |  . S LRSTR=$E(LRSTR,46,LRLEN)
 | 
|---|
| 29 |  Q
 | 
|---|