| 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
|
|---|