LIST^DIC stuff
From VistApedia
This will contain investigations of newer features of LIST^DIC
Example search:
S TMGFILE=22702
K TMGRSLT DO LIST^DIC(TMGFILE,,TMGFLDS,"PX","*",,,TMGSRCH,,,"TMGRSLT","TMGMSG") ZWR TMGRSLT
SET TMGSRCH="(UPPERCASE(#1000)[""REMOTE"")"
ASTRON>x x
TMGRSLT("DILIST",0)="3^*^0^"
TMGRSLT("DILIST",0,"MAP")="IEN^.01"
TMGRSLT("DILIST",1,0)="1^KILLTHIS -- SAFE"
TMGRSLT("DILIST",2,0)="4^KILLTHIS -- SAFE"
TMGRSLT("DILIST",3,0)="7^KILLTHIS -- SAFE"
Partial stack trace
1. LIST^DIC
...
4. BADQ+3^DICL Code: D IDENTS^DICU1(DIFLAGS,.DIFILE,DIFIELDS,DIWRITE,.DIDENT,.DINDEX)
5. ID3+4^DICU1 Code: F D Q:$G(DIERR)!DIOUTI
6. ID4C+5^DICU1 Code: . I DIDS=";;",DIFLAGS[4,DIUSEKEY'="F",DIDENT=.01 Q
7. IXNAME+2^DICL Code: I DIFLAGS["X" D DICL^DICLGFT G BADQ ;NOTE: A CROSS-REF MUS...
(Note: here is branch into DICGFT, the recent customization of FIND^DIC)
8. BACKWARD+2^DICLGFT Code: E D
9. BACKWARD+3^DICLGFT Code: .S X=$$SORT(DIFILE,DINDEX,DIGFTEMP,.DIFROM)
10. DIP^DICLGFT Code: DIP D EN1^DIP ;HERE IS THE BIG CALL TO FILEMAN'S PRINT MODULE!
%=""
%TMG=""
%Y=""
BY="(UPPERCASE(#1000)[""REMOTE"")"
DD=22702
DEBUG=0
DHD="@@"
DHIT="S @DICLARAY@($S($G(DIOO1)]"""":DIOO1,1:1),D0)="""""
DIC="^TMG(22702,"
DICLARAY="^TMP(""DICLB"",22702,3903)"
DICLERR=""
DICLGFT=1
DICLGFTX=""
DICODE="$P(DI0NODE,U,1)"
DICOUNT=0
DICRSR=3
DIDEF="DOCUMENT TYPE^RP8925.1'Oa^TIU(8925.1,^0;1^Q"
DIDEFALT="E"
DIDS=";;"
DIDS("FID")=""
DIDS("WID")=""
DIFIELDS="@;.01"
DIFIEN=","
DIFILE=22702
DIFIXPT=1
DIFLAGS="PX3"
DIFM=1
DIFORMAT=""
DIFROM=" , , , , , , , , , , , ," ;*
DIFROM(1)=""
DIFROM("IEN")=""
DIGFTEMP="^TMP(""DICLB"",22702,3903)"
DILENGTH=3
DILIST="TMGRSLT(""DILIST"")"
DILIST("ORDER")=0
DILOCKTM=3
DIMSGA="TMGMSG"
DINDEX="(UPPERCASE(#1000)[""REMOTE"")"
DINDEX("WAY")=1
DINUMBER="*"
DIOBEG="K ^UTILITY($J,""H"") S DISH=1,IOT="""",$X=0,$Y=0"
DIOSL=9999999
DIOUT=0
DIOUTI=0
DIPART(1)=""
DIQUIET=1
DISCREEN("F")=""
DISCREEN("S")=""
DISUPNO=1
DISYS=19
DITEMP="^TMP(""DICLB"",22702,3903"
DITYPE="RP8925.1'Oa"
DIUSEKEY=0
DIWRITE=""
DT=3131104
DTIME=9600
DUZ=168
DUZ(0)="@"
DUZ(1)=""
DUZ(2)=69
DUZ("AG")="E"
DUZ("AUTO")=1
DUZ("BUF")=1
DUZ("LANG")=""
FLDS="X ""QUIT"";X"
*FR=DIFROM
Forced=0
IO="/dev/pts/4"
IO(0)="/dev/pts/4"
IO(1,"/dev/pts/4")=""
IO("HOME")="50^/dev/pts/4"
IO("IP")="99.121.54.165"
IO("ZIO")="/dev/pts/4"
IOBS="$C(8)"
IOF="#,$C(27,91,50,74,27,91,72)"
IOM=80
ION="TELNET"
IOS=50
IOSL=24
IOST="C-VT102"
IOST(0)=60
IOT=""
IOX=0
IOXY="W $C(27,91)_((DY+1))_$C(59)_((DX+1))_$C(102)"
IOY=0
L=0
Pos=""
SCRN="(#1000[""emote"")"
SCRN(1)="(UPPERCASE(#1000)[""REMOTE"")"
TIUFPRIV=1
TMGFILE=22702
TMGFLDS="@;.01"
TMGSRCH="(UPPERCASE(#1000)[""REMOTE"")"
TO=",,,,,,,,,,"
U="^"
X="DIOO1"
XGRT="CR"
XPARSYS="5;DIC(4.2,"
XQDIC=10974
XQPSM="P10974"
XQVOL="EHR"
cAbort=0
cFalse=0
cOKToCont=1
cTrue=1
x="K TMGRSLT DO LIST^DIC(TMGFILE,,TMGFLDS,""PX"",""*"",,,TMGSRCH,,,""TMGRSLT"",""TMGMSG"") ZWR TMGRSLT"
With further debugging I get to point where DPP has been created.
10. DIP^DICLGFT Code: DIP D EN1^DIP ;HERE IS THE BIG CALL TO FILEMAN'S PRINT MODULE! 11. 2^DIO1 Code: 2 K D,%,I D 2^DIO D I $G(DIERR) G IXK^DIO 12. XDY+1^DIO2 Code: X DY(DN) G XDY:DN 13. PASS^DIO2 Code: PASS S:'$D(DPQ) DIPASS=1 14. @"N/A" Code: 15. IXNAME+2^DICL Code: I DIFLAGS["X" D DICL^DICLGFT G BADQ ;NOTE: A CROSS-REF MUS... 16. BACKWARD+2^DICLGFT Code: E D 17. BACKWARD+3^DICLGFT Code: .S X=$$SORT(DIFILE,DINDEX,DIGFTEMP,.DIFROM) 18. DIP^DICLGFT Code: DIP D EN1^DIP ;HERE IS THE BIG CALL TO FILEMAN'S PRINT MODULE! 19. LEVELS^DIP Code: LEVELS F DJ=DJ:1:7 D DJ Q:$G(X)=""!($D(DTOUT))!($D(DUOUT))!'$... 20. DJ^DIP Code: DJ K DPP(DJ),DL,DV,I,J S I(0)=DI,(DL,J(0))=S,(N,DU)=0,Y=.01
%=""
%TMG=""
BY=""
C=","
D="NUMBER"
DA="DPP(1,""OVF0"","
DC=0
DCC="^TMG(22702,"
DD=22702
DE="Sort"
DEBUG=0
DHD="@@"
DHIT="S @DICLARAY@($S($G(DIOO1)]"""":DIOO1,1:1),D0)="""""
DI="^TMG(22702,"
DIC="^DD(DL,"
DIC(0)="Z"
DICLARAY="^TMP(""DICLB"",22702,3903)"
DICLERR=""
DICLGFT=1
DICLGFTX=""
DIFIELDS="@;.01"
DIFIEN=","
DIFIXPT=1
DIFLAGS="PX3"DIFM=0
DIFROM=" , , , , , , , , , , , ," ;*
DIFROM(1)=""DIFROM("IEN")=""
DIGFTEMP="^TMP(""DICLB"",22702,3903)"
DIJ=0
DIL(22702)="^"
DILIST="TMGRSLT(""DILIST"")"
DILIST("ORDER")=0
DILOCKTM=3
DIMSGA="TMGMSG"
DINDEX="(UPPERCASE(#1000)[""REMOTE"")"
DINDEX("WAY")=1
DINUMBER="*"
DIOBEG="K ^UTILITY($J,""H"") S DISH=1,IOT="""",$X=0,$Y=0"
DIOSL=9999999
DIOUT=0
DIPART(1)=""
DIQUIET=1
DISCREEN("F")=""
DISCREEN("S")=""
DISUPNO=1
DISYS=19
DITEMP="^TMP(""DICLB"",22702,3903"
DIWRITE=""
DJ=2
DL=22702
DM="(UPPERCASE(#1000)[""REMOTE"")"
DNP=""
DPP="(UPPERCASE(#1000)[""REMOTE"")"
DPP(1)="22702^^(UPPERCASE(#1000)[""REMOTE"")^""@B^;L1^^^^^4"
DPP(1,"CM")="S Y(1)=$S($D(^TMG(22702,D0,4)):^(4),1:"""") S X=$P(Y(1),U,1),X=$$UP^DILIBF(X) S X=X[""REMOTE"" I D0>0 S DISX(1)=X"
DPP(1,"F")=0
DPP(1,"GET")="S Y(1)=$S($D(^TMG(22702,D0,4)):^(4),1:"""") S X=$P(Y(1),U,1),X=$$UP^DILIBF(X) S X=X[""REMOTE"" I D0>0 S DISX(1)=X"
DPP(1,"QCON")="I DISX(1)"
DPP(1,"T")=1
DPP(1,"TXT")="(UPPERCASE(#1000)[""""REMOTE"""")"
DQI="Y("
DT=3131104
DTIME=9600
DU=.01