PSUTL ;BIR/PDW - Utilities for AR/WS extracts ;12 AUG 1999
Source file <PSUTL.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| VARKILL | ;PEP Kill variable PSU* namespace | |
| GETS(PSUFILE,PSUDA,PSUDR,PSUROOT,PSUFORM) | ; ; Example S PSUSITE=6025 ; D GETS^PSUTL(200.02,"DUZ,PSUSITE",".01","DIV") ; returns ; DIV(.01)="HINES DEVELOPMENT" | 
 
 | 
| UPPER(PSUX) | ;Convert lower case to upper case | |
| VALI(PSUFILE,PSUDA,PSUFLD) | ; Returns Internal Value | 
 
 | 
| GETM(PSUFILE,PSUDA,PSUFLD,PSUROOT,PSUFORM) | ;EP RETURN MULTIPLES ; PSUFILE is the immediate upper level file number of the one desired ; PSUDA is the "DO,D1,Dx .." IENS to get to the immediate upper level ; PSUFLD is the field notation for the multiple at the upper level ; "3*" ; appended with "^" and the list of fields ".01;.02;9.3;..." ; resulting in "3*^.01;.02;9.3;..." ; PSUROOT is the target closed array reference ; PSUFORM is the format as in GET^DIQ ; return form is @PSUROOT@(da,fld)=VALUE | 
 
 | 
| PARSE(XBDA) | ;PEP - parse DA literal into da array | |
| VAL(PSUFILE,PSUDA,PSUFLD) | ; Returns External Value | 
 
 | 
| MOVEI(PSUREF) | ;EP Move @PSUREF@(Fld,"I") values to @PSUREF@(Fld) | 
 
 | 
| MOVEMI(PSUREF) | ;EP Move @PSUREF@(da,Fld,"I") values to @PSUREF@(da,Fld) | 
 
 | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^TMP("PSUDIQ" | GETS+12!, GETS+17, GETS+18!, GETM+31, GETM+32! | 
| ^TMP("PSUVAR" | VARKILL+5, VARKILL+6! | 
| Name | Line Occurrences | 
|---|---|
| GETS | VAL+4, VALI+4, GETM+29 | 
| PARSE | GETS+10 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| D | PARSE+2~ | 
| D( | PARSE+3*, PARSE+5 | 
| DA | GETS+6~, GETS+11, PARSE+1*, PARSE+7* | 
| DA( | PARSE+5*, PARSE+6* | 
| DA(0 | PARSE+7, PARSE+8! | 
| FLD | GETM+36~, GETM+37*, GETM+38*, GETM+40*, GETM+41* | 
| I | GETM+36~, GETM+38*, PARSE+2~, PARSE+3*, PARSE+4*, PARSE+5, PARSE+6 | 
| J | PARSE+2~, PARSE+5*, PARSE+6* | 
| PSUDA | GETS~, GETS+7, GETS+10, VAL~, VAL+2, VAL+4, VALI~, VALI+2, VALI+4, GETM~ , GETM+18, GETM+29, MOVEMI+1~, MOVEMI+2*, MOVEMI+3 | 
| PSUDID | GETM+17~ | 
| PSUDID("SPECIFIER" | GETM+28 | 
| PSUDR | GETS~, GETS+7, GETS+13 | 
| PSUFILE | GETS~, GETS+7, GETS+13, GETS+17, VAL~, VAL+2, VAL+4, VALI~, VALI+2, VALI+4 , GETM~, GETM+18, GETM+27, GETM+29 | 
| PSUFLD | VAL~, VAL+2, VAL+4, VAL+5, VALI~, VALI+2, VALI+4, VALI+5, GETM~, GETM+18 , GETM+22, GETM+24*, GETM+25, GETM+27, GETM+29, MOVEI+1~, MOVEI+2*, MOVEMI+1~, MOVEMI+3* | 
| PSUFLDL | GETM+23!, GETM+24*, GETM+25, GETM+33, GETM+37, GETM+38, GETM+42! | 
| PSUFLDL( | GETM+37*, GETM+38*, GETM+41 | 
| PSUFORM | GETS~, GETS+9*, GETS+13, GETM~, GETM+21*, GETM+29 | 
| PSUIEN | GETS+6~, GETS+11*, GETS+13, GETS+17, GETM+31*, GETM+39*, GETM+41 | 
| PSUMTUL | GETS+15, GETM+17~, GETM+20* | 
| PSUREF | MOVEI~, MOVEI+2, MOVEMI~, MOVEMI+2, MOVEMI+3 | 
| PSUROOT | GETS~, GETS+7, GETS+17, GETM~, GETM+18, GETM+29, GETM+31, GETM+39, GETM+41 | 
| PSUSUB | GETM+17~, GETM+28*, GETM+31 | 
| PSUTMP | VAL+1~, VALI+1~ | 
| PSUTMP( | VAL+5, VALI+5 | 
| PSUX | UPPER~, UPPER+1 | 
| U | GETM+24 | 
| >> X | VARKILL+2*, VARKILL+5* | 
| XBDA | PARSE~, PARSE+1, PARSE+3 |