| 1 | VALMXQ14 ; alb/mjk - XQORMX for export with LM v1 ; 3/30/93 | 
|---|
| 2 | ;;1;List Manager;;Aug 13, 1993 | 
|---|
| 3 | ; | 
|---|
| 4 | ; | 
|---|
| 5 | XQORMX ; SLC/KCM - Build formatted menus ; 5/2/89  14:55 ; | 
|---|
| 6 | ;;6.7;Sidewinder;;Jan 08, 1993 | 
|---|
| 7 | SET ;From: XQORM (when navigating file 19)  Entry: DA  Exit: DA | 
|---|
| 8 | ;NOTE:  Lock ^DIC(19,DA) when calling | 
|---|
| 9 | N X I $D(^XUTL("XQORM",DA_";DIC(19,",0)),$D(^DIC(19,DA,99)),($P(^DIC(19,DA,99),"^",1)=$P(^XUTL("XQORM",DA_";DIC(19,",0),"^",1)) Q | 
|---|
| 10 | K ^TMP("XQORM",$J),^XUTL("XQORM",DA_";DIC(19,") | 
|---|
| 11 | S ORMN=1,^XUTL("XQORM",DA_";DIC(19,","COL")=ORMN,ORMT=0 | 
|---|
| 12 | F ORM=0:0 S ORM=$O(^DIC(19,DA,10,ORM)) Q:ORM'>0  I $D(^DIC(19,DA,10,ORM,0)) S ORMX=^(0) D ORD | 
|---|
| 13 | S ORM=ORMT\ORMN S:ORMT#ORMN ORM=ORM+1 S ORMT=ORM,ORMC=.1 | 
|---|
| 14 | S ORMI="" F ORM=0:0 S ORMI=$O(^TMP("XQORM",$J,ORMI)) Q:ORMI=""  F ORM=0:0 S ORM=$O(^TMP("XQORM",$J,ORMI,ORM)) Q:ORM'>0  I $D(^DIC(19,DA,10,ORM,0)) S ORMX=^(0),ORMC=$S((ORMC\1)'<ORMT:1+($P(ORMC,".",2)/10)+.1,1:ORMC+1) D BILD | 
|---|
| 15 | I $D(^DIC(19,DA,99)) S ORM=$P(^(99),"^",1),^XUTL("XQORM",DA_";DIC(19,",0)=ORM | 
|---|
| 16 | K ORM,ORMX,ORMN,ORMT,ORMC,ORMI,^TMP("XQORM",$J) Q | 
|---|
| 17 | ORD S ORMI=$S(+$P(ORMX,"^",3):+$P(ORMX,"^",3),+$P(ORMX,"^",2):+$P(ORMX,"^",2),$L($P(ORMX,"^",2)):"M"_$P(ORMX,"^",2),1:"Z"_$S($D(^DIC(19,+$P(ORMX,"^",1),0)):$P(^(0),"^",2),1:"")) S ^TMP("XQORM",$J,ORMI,ORM)="",ORMT=ORMT+1 | 
|---|
| 18 | Q | 
|---|
| 19 | BILD S X=$S($D(^DIC(19,+$P(ORMX,"^",1),0)):$P(^(0),"^",2),1:"") | 
|---|
| 20 | F %=1:1:$L(X) I ",=;-"[$E(X,%) S X=$E(X,1,%-1)_" "_$E(X,%+1,999) | 
|---|
| 21 | S ^XUTL("XQORM",DA_";DIC(19,",ORMC,0)=ORM_"^"_$P(ORMX,"^",1)_"^"_X_"^"_$P(ORMX,"^",2) | 
|---|
| 22 | I $L(X) D UP S ^XUTL("XQORM",DA_";DIC(19,","B",X,ORMC)="" | 
|---|
| 23 | S X=$P(ORMX,"^",2) I $L(X) D UP S ^XUTL("XQORM",DA_";DIC(19,","B",X,ORMC)=1 | 
|---|
| 24 | Q | 
|---|
| 25 | UP F %=1:1:$L(X) I $E(X,%)?1L S X=$E(X,1,%-1)_$C($A(X,%)-32)_$E(X,%+1,99) | 
|---|
| 26 | Q | 
|---|