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

ALPBFRMU.m

Go to the documentation of this file.
  1. ALPBFRMU ;OIFO-DALLAS MW,SED,KC-PRINT FORMATTING UTILITIES;01/01/03
  1. ;;3.0;BAR CODE MED ADMIN;**8,1018**;Mar 2004;Build 27
  1. ;
  1. FTEXT(COL,TEXT,RESULTS) ; format TEXT array...
  1. ; COL = number of columns (line length)
  1. ; TEXT = array to be reformatted. the array should be in
  1. ; standard FM format: TEXT(1,0)=text
  1. ; TEXT(2,0)=text
  1. ; TEXT(n,0)=text
  1. ; RESULT = array passed by reference into which reformatted text
  1. ; will be returned: RESULTS(1,0)=formatted text to COL length
  1. ; RESULTS(2,0)=formatted text to COL length
  1. I +$G(COL)=0!('$D(TEXT)) Q
  1. N ALPBTEMP,I,J,L,M,FSTRING,XSTRING
  1. S (I,J)=0
  1. S XSTRING=""
  1. F S I=$O(TEXT(I)) Q:'I D
  1. .S DATA=$G(TEXT(I,0))
  1. .I DATA="" D Q
  1. ..S J=J+1
  1. ..S ALPBTEMP(J,0)=""
  1. .F L=1:1:$L(DATA) D
  1. ..S XSTRING=XSTRING_$E(DATA,L)
  1. ..I $L(XSTRING)=COL D
  1. ...S FSTRING=XSTRING
  1. ...F M=$L(XSTRING):-1:1 Q:$A($E(XSTRING,M))'>32
  1. ...S FSTRING=$E(XSTRING,1,M-1)
  1. ...S XSTRING=$E(XSTRING,M+1,$L(XSTRING))
  1. ...S J=J+1
  1. ...S ALPBTEMP(J,0)=FSTRING
  1. ...S FSTRING=""
  1. ...I $L(XSTRING)=COL S XSTRING=""
  1. I $L(XSTRING)>0 D
  1. .S J=J+1
  1. .S ALPBTEMP(J,0)=XSTRING
  1. M RESULTS=ALPBTEMP
  1. Q
  1. ;
  1. HDR(DATA,PG,RESULTS) ; print page header...
  1. ; DATA = an array passed by reference containing the nodes in
  1. ; a patient's record in ^ALPB(53.7,...)
  1. ; PG = page number to use
  1. ; RESULTS = an array passed by reference that will be used to return
  1. ; the formated data
  1. ; returns data in formated 132-column output
  1. N ALPBALG,ALPBALGL,ALPBALGX,ALPBX,LINE
  1. I $G(PG)="" S PG=0
  1. S RESULTS(1)="MAR Ran: "_$$FMTE^XLFDT($$NOW^XLFDT())
  1. S RESULTS(1)=$$PAD^ALPBUTL(RESULTS(1),32)_"Inpatient Pharmacy Orders (Backup)"
  1. S RESULTS(1)=$$PAD^ALPBUTL(RESULTS(1),122)_"Page: "_$J(PG,3)
  1. S RESULTS(2)=$P($G(DATA(0)),"^")
  1. S RESULTS(2)=$$PAD^ALPBUTL(RESULTS(2),33)_"HRN: "_$P($G(DATA(0)),"^",2)
  1. S RESULTS(2)=$$PAD^ALPBUTL(RESULTS(2),50)_"DOB: "_$S($P($G(DATA(0)),"^",3)'="":$$FMTE^XLFDT($P(DATA(0),"^",3)),1:"not on file")
  1. S RESULTS(2)=$$PAD^ALPBUTL(RESULTS(2),70)_"Sex: "_$P($G(DATA(0)),"^",4)
  1. S RESULTS(3)="Ward: "_$P($G(DATA(0)),"^",5)
  1. S RESULTS(3)=$$PAD^ALPBUTL(RESULTS(3),32)_"Room: "_$P($G(DATA(0)),"^",6)
  1. S RESULTS(3)=$$PAD^ALPBUTL(RESULTS(3),50)_"Bed: "_$P($G(DATA(0)),"^",7)
  1. S RESULTS(4)=""
  1. S RESULTS(4)=$$PAD^ALPBUTL(RESULTS(4),12)_"This record last updated: "
  1. S RESULTS(4)=RESULTS(4)_$S($P(DATA(0),"^",8)'="":$$FMTE^XLFDT($P(DATA(0),"^",8)),1:"<date not on file>")
  1. S LINE=4
  1. ; report allergies...
  1. I '$D(DATA(1,0)) D
  1. .;no allergies reported
  1. .S LINE=LINE+1,RESULTS(LINE)=""
  1. .S RESULTS(LINE)="No allergies reported to the Contingency"
  1. I +$O(DATA(1,0)) D
  1. .S LINE=LINE+1
  1. .S RESULTS(LINE)=""
  1. .S ALPBALGX="Allergies: "
  1. .S ALPBALGL=$L(ALPBALGX)-1
  1. .S (ALPBCNT,ALPBX)=0
  1. .F S ALPBX=$O(DATA(1,ALPBX)) Q:'ALPBX D
  1. ..S ALPBALG=$P($G(DATA(1,ALPBX,0)),"^",2)
  1. ..I ALPBALG="" K ALPBALG Q
  1. ..I $L(ALPBALGX_ALPBALG_"; ")>90 D
  1. ...S LINE=LINE+1
  1. ...S RESULTS(LINE)=""
  1. ...S ALPBALGX=""
  1. ...S ALPBALGX=$$PAD^ALPBUTL(ALPBALGX,ALPBALGL)
  1. ..S ALPBALGX=ALPBALGX_ALPBALG_$S(+$O(DATA(1,ALPBX)):"; ",1:"")
  1. ..S RESULTS(LINE)=ALPBALGX
  1. S RESULTS(0)=LINE
  1. Q
  1. ;
  1. ; code adapted from original routine ^ALPFOOT by FD@NJHCS, May 2002
  1. W !,"|"
  1. W ?13,"SIGNATURE/TITLE"
  1. W ?40,"| INIT"
  1. W ?48,"|"
  1. W ?50,"INJECTION SITES (Right or Left)"
  1. W ?88,"VA FORM 10-2970"
  1. W !,"|"
  1. W $$REPEAT^XLFSTR("_",38)
  1. W ?40,"|_______| 1. DELTOID"
  1. W ?71,"4. MED (ANTERIOR) THIGH"
  1. W ?96,"7. ABDOMEN"
  1. W !,"|"
  1. W $$REPEAT^XLFSTR("_",38)
  1. W ?40,"|_______| 2. VENTRAL GLUTEAL"
  1. W ?71,"5. VASTUS LATERALIS"
  1. W ?96,"8. THIGH"
  1. W !,"|"
  1. W $$REPEAT^XLFSTR("_",38)
  1. W ?40,"|_______| 3. GLUTEUS MEDIUS"
  1. W ?71,"6. UPPER ARM"
  1. W ?96,"9. BUTTOCK"
  1. W !,"|"
  1. W $$REPEAT^XLFSTR("_",38)
  1. W ?40,"|_______|10. UPPER BACK PRN: E=Effective N=Not Effective"
  1. Q