| 1 | XHDTST ; SLC/JER - Test calls ; 25 Jul 2003  9:42 AM | 
|---|
| 2 | ;;1.0;HEALTHEVET DESKTOP;;Jul 15, 2003 | 
|---|
| 3 | INLST(ORY,ORX) ; Test input list | 
|---|
| 4 | N I,J,RC S I="",(J,RC)=0,ORY=$NA(^TMP("XHDZTST",$J)) | 
|---|
| 5 | D XMLHDR^XHDLXM(.ORY,"result",.J),RSLTBL(.ORY,.J) | 
|---|
| 6 | F  S I=$O(ORX(I)) Q:I']""  D | 
|---|
| 7 | . N COL | 
|---|
| 8 | . S RC=RC+1 | 
|---|
| 9 | . D BUILDROW(.COL,.ORX,I),SETROW(.ORY,.COL,.J) | 
|---|
| 10 | S SPEC("##")=RC,@ORY@(3)=$$REPLACE^XLFSTR(@ORY@(3),.SPEC) | 
|---|
| 11 | S J=J+1,@ORY@(J)="</rows>" | 
|---|
| 12 | S J=J+1,@ORY@(J)="</resultTable>" | 
|---|
| 13 | D XMLFOOT^XHDLXM(.ORY,"result",.J) | 
|---|
| 14 | Q | 
|---|
| 15 | RSLTBL(ORY,ORI) ; resultTable | 
|---|
| 16 | S ORI=ORI+1 | 
|---|
| 17 | S @ORY@(ORI)="<resultTable name=""test_list"" rowCount=""##"" columnCount=""2"">" | 
|---|
| 18 | S ORI=ORI+1,@ORY@(ORI)="<columns>" | 
|---|
| 19 | S ORI=ORI+1 | 
|---|
| 20 | S @ORY@(ORI)="<c name=""name"" type=""string""/>" | 
|---|
| 21 | S ORI=ORI+1 | 
|---|
| 22 | S @ORY@(ORI)="<c name=""value"" type=""string""/>" | 
|---|
| 23 | S ORI=ORI+1,@ORY@(ORI)="</columns>" | 
|---|
| 24 | S ORI=ORI+1,@ORY@(ORI)="<rows>" | 
|---|
| 25 | Q | 
|---|
| 26 | BUILDROW(COL,ORX,I) ; Resolve fields for each row | 
|---|
| 27 | S COL(1)=I | 
|---|
| 28 | S COL(2)=ORX(I) | 
|---|
| 29 | Q | 
|---|
| 30 | SETROW(ORY,COL,ORI) ; Generate tags for row | 
|---|
| 31 | N ORC,Y S ORC=0 | 
|---|
| 32 | S ORI=ORI+1,@ORY@(ORI)="<r>" | 
|---|
| 33 | S Y=ORI | 
|---|
| 34 | F  S ORC=$O(COL(ORC)) Q:+ORC'>0  D | 
|---|
| 35 | . S ORI=ORI+1,@ORY@(ORI)=$S(COL(ORC)]"":"<c>"_COL(ORC)_"</c>",1:"<c/>") | 
|---|
| 36 | I Y=ORI S ORI=ORI+1,@ORY@(ORI)="<c/>" | 
|---|
| 37 | S ORI=ORI+1,@ORY@(ORI)="</r>" | 
|---|
| 38 | Q | 
|---|