- ORWCV1 ; slc/dcm - CoverSheet calls continued ;12:30 PM 4 Oct 2000
- ;;3.0;ORDER ENTRY/RESULTS REPORTING;**85**;Dec 17, 1997
- ;
- COVERLST(LST) ; -- return data for coversheet
- ;RPC: ORWCV1 COVERSHEET LIST
- N I,J,X,X0,X2,CNT,EOF,ROOT,RPC,LIST,DETAIL,HEAD
- S EOF="$$END",ROOT=$NA(LST),(CNT,I)=0
- D GETLST^XPAR(.LIST,"ALL","ORWCV1 COVERSHEET LIST")
- F S I=$O(LIST(I)) Q:'I Q:'$D(^ORD(101.24,$P(LIST(I),"^",2),0)) S X0=^(0),X2=$G(^(2)) D
- . Q:$P(X0,"^",12)="L"
- . S RPC=$P($G(^XWB(8994,+$P(X0,"^",13),0)),"^"),DETAIL=""
- . I $P(X0,"^",18) S DETAIL=$P($G(^ORD(101.24,+$P(X0,"^",18),0)),"^",13),DETAIL=$P($G(^XWB(8994,+DETAIL,0)),"^")
- . S HEAD=$P(X0,"^") I $L($P(X2,"^",3)) S HEAD=$P(X2,"^",3)
- . S X=$P(X0,"^",2)_"^"_HEAD_"^"_$P(X0,"^",3)_"^"_$P(X0,"^",12)_"^"_$P(X0,"^",7)_"^"_RPC_"^"_$P(X0,"^",9)
- . S X=X_"^"_$P(X0,"^",10)_"^"_$P(X0,"^",11)_"^"_$P(X0,"^",14)_"^"_$P(X0,"^",15)_"^"_$P(X2,"^")_"^"_$P(X0,"^",4)_"^"_$P(X0,"^",16)_"^"_$P(X0,"^",17)_"^"_DETAIL_"^"_LIST(I)
- . D SETITEM(.ROOT,X)
- Q
- SETITEM(ROOT,X) ; -- set item in list
- S @ROOT@($O(@ROOT@(9999),-1)+1)=X
- Q
- DETAIL(ID) ;Get RPC for Detail report
- ;ID=Cover sheet TAG ID
- Q:'$L($G(ID)) ""
- N I,X0,DETAIL
- S I=0,DETAIL=""
- F S I=$O(^ORD(101.24,"AC",ID,I)) Q:'I S X0=$G(^ORD(101.24,I,0)) I $P(X0,"^",8)="C",$P(X0,"^",18) S DETAIL=$P($G(^ORD(101.24,+$P(X0,"^",18),0)),"^",13),DETAIL=$P($G(^XWB(8994,+DETAIL,0)),"^")
- Q DETAIL
- ORWCV1 ; slc/dcm - CoverSheet calls continued ;12:30 PM 4 Oct 2000
- +1 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**85**;Dec 17, 1997
- +2 ;
- COVERLST(LST) ; -- return data for coversheet
- +1 ;RPC: ORWCV1 COVERSHEET LIST
- +2 NEW I,J,X,X0,X2,CNT,EOF,ROOT,RPC,LIST,DETAIL,HEAD
- +3 SET EOF="$$END"
- SET ROOT=$NAME(LST)
- SET (CNT,I)=0
- +4 DO GETLST^XPAR(.LIST,"ALL","ORWCV1 COVERSHEET LIST")
- +5 FOR
- SET I=$ORDER(LIST(I))
- IF 'I
- QUIT
- IF '$DATA(^ORD(101.24,$PIECE(LIST(I),"^",2),0))
- QUIT
- SET X0=^(0)
- SET X2=$GET(^(2))
- Begin DoDot:1
- +6 IF $PIECE(X0,"^",12)="L"
- QUIT
- +7 SET RPC=$PIECE($GET(^XWB(8994,+$PIECE(X0,"^",13),0)),"^")
- SET DETAIL=""
- +8 IF $PIECE(X0,"^",18)
- SET DETAIL=$PIECE($GET(^ORD(101.24,+$PIECE(X0,"^",18),0)),"^",13)
- SET DETAIL=$PIECE($GET(^XWB(8994,+DETAIL,0)),"^")
- +9 SET HEAD=$PIECE(X0,"^")
- IF $LENGTH($PIECE(X2,"^",3))
- SET HEAD=$PIECE(X2,"^",3)
- +10 SET X=$PIECE(X0,"^",2)_"^"_HEAD_"^"_$PIECE(X0,"^",3)_"^"_$PIECE(X0,"^",12)_"^"_$PIECE(X0,"^",7)_"^"_RPC_"^"_$PIECE(X0,"^",9)
- +11 SET X=X_"^"_$PIECE(X0,"^",10)_"^"_$PIECE(X0,"^",11)_"^"_$PIECE(X0,"^",14)_"^"_$PIECE(X0,"^",15)_"^"_$PIECE(X2,"^")_"^"_$PIECE(X0,"^",4)_"^"_$PIECE(X0,"^",16)_"^"_$PIECE(X0,"^",17)_"^"_DETAIL_"^"_LIST(I)
- +12 DO SETITEM(.ROOT,X)
- End DoDot:1
- +13 QUIT
- SETITEM(ROOT,X) ; -- set item in list
- +1 SET @ROOT@($ORDER(@ROOT@(9999),-1)+1)=X
- +2 QUIT
- DETAIL(ID) ;Get RPC for Detail report
- +1 ;ID=Cover sheet TAG ID
- +2 IF '$LENGTH($GET(ID))
- QUIT ""
- +3 NEW I,X0,DETAIL
- +4 SET I=0
- SET DETAIL=""
- +5 FOR
- SET I=$ORDER(^ORD(101.24,"AC",ID,I))
- IF 'I
- QUIT
- SET X0=$GET(^ORD(101.24,I,0))
- IF $PIECE(X0,"^",8)="C"
- IF $PIECE(X0,"^",18)
- SET DETAIL=$PIECE($GET(^ORD(101.24,+$PIECE(X0,"^",18),0)),"^",13)
- SET DETAIL=$PIECE($GET(^XWB(8994,+DETAIL,0)),"^")
- +6 QUIT DETAIL