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

PXRMETH1.m

Go to the documentation of this file.
  1. PXRMETH1 ; SLC/PJH - Reminder Extract History ;09/07/2007
  1. ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
  1. ;
  1. BLDLIST(EDIEN) ;Build workfile
  1. ;EDIEN is the extract definition IEN.
  1. N IND,FMTSTR,PLIST
  1. K ^TMP("PXRMETH",$J)
  1. S FMTSTR=$$LMFMTSTR^PXRMTEXT(.VALMDDF,"RLL")
  1. ;Build list of extract summaries in period order
  1. I PXRMVIEW="P" D LIST1(EDIEN,"PXRMETH",FMTSTR)
  1. ;Build list of extract summaries in date order
  1. I PXRMVIEW="D" D LIST2(EDIEN,"PXRMETH",FMTSTR)
  1. Q
  1. ;
  1. FMT(NUMBER,NAME,EDATE,XDATE,AUTO,FMTSTR,NL,OUTPUT) ;Format
  1. N TAUTO,TDATE,TEMP,TNAME,TSOURCE
  1. S TEMP=NUMBER_U_NAME_U
  1. S TDATE=$$FMTE^XLFDT(EDATE,"5Z")
  1. S TEMP=TEMP_$$LJ^XLFSTR(TDATE,20," ")
  1. S TDATE=XDATE I TDATE S TDATE=$$FMTE^XLFDT(TDATE,"5Z")
  1. S TEMP=TEMP_" "_$$LJ^XLFSTR(TDATE,22," ")
  1. S TAUTO=AUTO
  1. S TEMP=TEMP_TAUTO
  1. D COLFMT^PXRMTEXT(FMTSTR,TEMP," ",.NL,.OUTPUT)
  1. Q
  1. ;
  1. HELP(CALL) ;General help text routine.
  1. N HTEXT
  1. I CALL=1 D
  1. .S HTEXT(1)="Select DE to delete an extract.\\"
  1. .S HTEXT(2)="Select ES to view the details of an extract or run a compliance"
  1. .S HTEXT(3)="report for the extract.\\Select MT to transmit extract details to the AAC.\\"
  1. .S HTEXT(4)="Select TH to view the transmission history for an extract."
  1. ;
  1. I CALL=3 D
  1. .S HTEXT(1)="Select Y to send the results of the Extract to the National Austin database."
  1. ;
  1. I CALL=4 D
  1. .S HTEXT(4)="Select Y to overwrite the previous Extract stored in the National Austin Database."
  1. D HELP^PXRMEUT(.HTEXT)
  1. Q
  1. ;
  1. LIST1(EDIEN,NODE,FMTSTR) ;Build a list of extract summaries for a parameter.
  1. N AUTO,EDATE,HL7ID,HL7SUB,IND,JND,NAME,NL,NUM,OUTPUT
  1. N PERIOD,STR,XDATE,YEAR
  1. ;Build list of extract summaries in reverse date order.
  1. S YEAR="9999",(NUM,VALMCNT)=0
  1. F S YEAR=$O(^PXRMXT(810.3,"D",EDIEN,YEAR),-1) Q:YEAR="" D
  1. .S PERIOD="99"
  1. .F S PERIOD=$O(^PXRMXT(810.3,"D",EDIEN,YEAR,PERIOD),-1) Q:PERIOD="" D
  1. ..S IND=""
  1. ..F S IND=$O(^PXRMXT(810.3,"D",EDIEN,YEAR,PERIOD,IND),-1) Q:IND="" D
  1. ...S NAME=$P($G(^PXRMXT(810.3,IND,0)),U)
  1. ...S EDATE=$P($G(^PXRMXT(810.3,IND,0)),U,6)
  1. ...S AUTO=$P($G(^PXRMXT(810.3,IND,4)),U,5)
  1. ...S AUTO=$S(AUTO="A":"Y",1:"N")
  1. ...S HL7ID=$O(^PXRMXT(810.3,IND,5,"B",""),-1),XDATE="",HL7SUB=""
  1. ...I HL7ID S HL7SUB=$O(^PXRMXT(810.3,IND,5,"B",HL7ID,""))
  1. ...I HL7SUB S XDATE=$P($G(^PXRMXT(810.3,IND,5,HL7SUB,0)),U,2)
  1. ...I 'XDATE S XDATE="Not Transmitted"
  1. ...S NUM=NUM+1
  1. ...D FMT(NUM,NAME,EDATE,XDATE,AUTO,FMTSTR,.NL,.OUTPUT)
  1. ...F JND=1:1:NL D
  1. ....S VALMCNT=VALMCNT+1,^TMP(NODE,$J,VALMCNT,0)=OUTPUT(JND)
  1. ....S ^TMP(NODE,$J,"IDX",VALMCNT,NUM)=""
  1. ....S ^TMP(NODE,$J,"SEL",NUM)=IND
  1. Q
  1. ;
  1. LIST2(EDIEN,NODE,FMTSTR) ;Build a list of extract summaries for a parameter.
  1. N AUTO,EDATE,HL7ID,HL7SUB,IND,JND,NAME,NL,NUM,OUTPUT
  1. N PERIOD,STR,XDATE,YEAR
  1. ;Build list of extract summaries in reverse date order.
  1. S EDATE="",(NUM,VALMCNT)=0
  1. F S EDATE=$O(^PXRMXT(810.3,"C",EDIEN,EDATE),-1) Q:'EDATE D
  1. .S IND=""
  1. .F S IND=$O(^PXRMXT(810.3,"C",EDIEN,EDATE,IND)) Q:'IND D
  1. ..S NAME=$P($G(^PXRMXT(810.3,IND,0)),U,1)
  1. ..S AUTO=$P($G(^PXRMXT(810.3,IND,4)),U,5)
  1. ..S AUTO=$S(AUTO="A":"Y",1:"N")
  1. ..S HL7ID=$O(^PXRMXT(810.3,IND,5,"B",""),-1),XDATE="",HL7SUB=""
  1. ..I HL7ID S HL7SUB=$O(^PXRMXT(810.3,IND,5,"B",HL7ID,""))
  1. ..I HL7SUB S XDATE=$P($G(^PXRMXT(810.3,IND,5,HL7SUB,0)),U,2)
  1. ..I 'XDATE S XDATE="Not Transmitted"
  1. ..S NUM=NUM+1
  1. ..D FMT(NUM,NAME,EDATE,XDATE,AUTO,FMTSTR,.NL,.OUTPUT)
  1. ..F JND=1:1:NL D
  1. ...S VALMCNT=VALMCNT+1,^TMP(NODE,$J,VALMCNT,0)=OUTPUT(JND)
  1. ...S ^TMP(NODE,$J,"IDX",VALMCNT,NUM)=""
  1. ...S ^TMP(NODE,$J,"SEL",NUM)=IND
  1. Q
  1. ;