Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: XHDTST

XHDTST.m

Go to the documentation of this file.
  1. XHDTST ; SLC/JER - Test calls ; 25 Jul 2003 9:42 AM
  1. ;;1.0;HEALTHEVET DESKTOP;;Jul 15, 2003
  1. INLST(ORY,ORX) ; Test input list
  1. N I,J,RC S I="",(J,RC)=0,ORY=$NA(^TMP("XHDZTST",$J))
  1. D XMLHDR^XHDLXM(.ORY,"result",.J),RSLTBL(.ORY,.J)
  1. F S I=$O(ORX(I)) Q:I']"" D
  1. . N COL
  1. . S RC=RC+1
  1. . D BUILDROW(.COL,.ORX,I),SETROW(.ORY,.COL,.J)
  1. S SPEC("##")=RC,@ORY@(3)=$$REPLACE^XLFSTR(@ORY@(3),.SPEC)
  1. S J=J+1,@ORY@(J)="</rows>"
  1. S J=J+1,@ORY@(J)="</resultTable>"
  1. D XMLFOOT^XHDLXM(.ORY,"result",.J)
  1. Q
  1. RSLTBL(ORY,ORI) ; resultTable
  1. S ORI=ORI+1
  1. S @ORY@(ORI)="<resultTable name=""test_list"" rowCount=""##"" columnCount=""2"">"
  1. S ORI=ORI+1,@ORY@(ORI)="<columns>"
  1. S ORI=ORI+1
  1. S @ORY@(ORI)="<c name=""name"" type=""string""/>"
  1. S ORI=ORI+1
  1. S @ORY@(ORI)="<c name=""value"" type=""string""/>"
  1. S ORI=ORI+1,@ORY@(ORI)="</columns>"
  1. S ORI=ORI+1,@ORY@(ORI)="<rows>"
  1. Q
  1. BUILDROW(COL,ORX,I) ; Resolve fields for each row
  1. S COL(1)=I
  1. S COL(2)=ORX(I)
  1. Q
  1. SETROW(ORY,COL,ORI) ; Generate tags for row
  1. N ORC,Y S ORC=0
  1. S ORI=ORI+1,@ORY@(ORI)="<r>"
  1. S Y=ORI
  1. F S ORC=$O(COL(ORC)) Q:+ORC'>0 D
  1. . S ORI=ORI+1,@ORY@(ORI)=$S(COL(ORC)]"":"<c>"_COL(ORC)_"</c>",1:"<c/>")
  1. I Y=ORI S ORI=ORI+1,@ORY@(ORI)="<c/>"
  1. S ORI=ORI+1,@ORY@(ORI)="</r>"
  1. Q