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

XMXPRT.m

Go to the documentation of this file.
  1. XMXPRT ;ISC-SF/GMB-Print messages ;12/04/2002 13:52
  1. ;;8.0;MailMan;**10**;Jun 28, 2002
  1. ; For messages printed to the P-MESSAGE device,
  1. ; XMAPSUBJ = message subject
  1. ; XMY = message addressees
  1. PRINT1(XMDUZ,XMZ,XMPRTTO,XMINSTR,ZTSK,XMAPSUBJ,XMY) ; Print one message
  1. N XMWHICH,XMRECIPS,XMPRTHDR,ZTSAVE,ZTRTN,ZTDESC,ZTIO,ZTDTH,ZTUCI
  1. D PINIT(.XMINSTR,.XMPRTHDR,.XMRECIPS,.XMWHICH,.ZTDTH)
  1. F I="XMV(","DUZ","XMDUZ","XMZ","XMWHICH","XMRECIPS","XMPRTHDR","XMAPSUBJ","XMY(" S ZTSAVE(I)=""
  1. ;S:$D(XMSECURE) (ZTSAVE("XMSECURE"),ZTSAVE("XMSECURE("))=""
  1. S ZTIO=XMPRTTO
  1. S ZTDESC=$$EZBLD^DIALOG(34501) ; MailMan: Print
  1. S ZTRTN="XPMSG^XMXPRT"
  1. D ^%ZTLOAD
  1. Q
  1. PRINTM(XMDUZ,XMPRTTO,XMINSTR,ZTSK,XMAPSUBJ,XMY) ; Print more than one message
  1. N XMWHICH,XMRECIPS,XMPRTHDR,ZTSAVE,ZTRTN,ZTDESC,ZTIO,ZTDTH,ZTUCI
  1. D PINIT(.XMINSTR,.XMPRTHDR,.XMRECIPS,.XMWHICH,.ZTDTH)
  1. I "^0^*^"'[(U_XMWHICH_U) S XMWHICH="*"
  1. F I="XMV(","DUZ","XMDUZ","XMZ","XMWHICH","XMRECIPS","XMPRTHDR","^TMP(""XM"",$J,""XMZ"",","XMAPSUBJ","XMY(" S ZTSAVE(I)=""
  1. ;S:$D(XMSECURE) (ZTSAVE("XMSECURE"),ZTSAVE("XMSECURE("))=""
  1. S ZTIO=XMPRTTO
  1. S ZTDESC=$$EZBLD^DIALOG(34501) ; MailMan: Print
  1. S ZTRTN="XPRANGE^XMXPRT"
  1. D ^%ZTLOAD
  1. Q
  1. PINIT(XMINSTR,XMPRTHDR,XMRECIPS,XMWHICH,XMWHEN) ;
  1. ; XMPRTHDR 1=Print header (default)
  1. ; 0=don't (headerless print)
  1. ; XMRECIPS 0=Don't print recipients (default)
  1. ; 1=Print summary recipients
  1. ; 2=Print detail recipients
  1. S XMPRTHDR=+$G(XMINSTR("HDR"),1)
  1. S XMRECIPS=+$G(XMINSTR("RECIPS"))
  1. S XMWHICH=$G(XMINSTR("RESPS"),"*")
  1. S XMWHEN=$G(XMINSTR("WHEN"),"NOW")
  1. S XMWHEN=$S(XMWHEN="NOW":$H,1:$$FMTH^XLFDT(XMWHEN))
  1. Q
  1. PMSG(XMDUZ,XMZ,XMWHICH,XMRECIPS,XMPRTHDR,XMFIRST) ;
  1. XPMSG ;
  1. N XMK,XMKN,XMZREC,XMRESPS,XMPTR
  1. S ZTREQ="@"
  1. S XMK=+$O(^XMB(3.7,"M",XMZ,XMDUZ,""))
  1. S XMKN=$S(XMK:$P(^XMB(3.7,XMDUZ,2,XMK,0),U,1),1:$$EZBLD^DIALOG(34014)) ; * N/A *
  1. D RESPONSE^XMJMP(XMDUZ,XMZ,.XMRESPS,.XMPTR)
  1. S:XMWHICH="*" XMWHICH=$S(XMRESPS:"0-"_XMRESPS,1:0)
  1. S XMZREC=^XMB(3.9,XMZ,0)
  1. I $E(IOST,1,2)="C-"!'$G(XMFIRST,1) W @IOF
  1. D:XMPRTHDR IDHDR^XMJMP(XMDUZ)
  1. D PRINTIT^XMJMP1(XMDUZ,XMK,XMKN,XMZ,XMZREC,XMRESPS,XMPTR,XMWHICH,XMRECIPS,0,XMPRTHDR)
  1. Q
  1. PRANGE(XMDUZ,XMWHICH,XMRECIPS,XMPRTHDR) ;
  1. XPRANGE ; Print a range of messages.
  1. N XMZ,XMFIRST
  1. S XMZ=""
  1. S XMFIRST=1
  1. F S XMZ=$O(^TMP("XM",$J,"XMZ",XMZ)) Q:'XMZ D
  1. . Q:'$D(^XMB(3.9,XMZ,0))
  1. . D PMSG(XMDUZ,XMZ,XMWHICH,XMRECIPS,XMPRTHDR,.XMFIRST)
  1. . S XMFIRST=0
  1. Q