XMKPO ;ISC-SF/GMB-Post, other ;04/11/2002  07:08
 ;;8.0;MailMan;;Jun 28, 2002
 ; Replaces ^XMBPOST and the first part of ^XMS1 (ISC-WASH/THM/RWF/CAP)
 ; Schedule a task to deliver bulletin, server, device
DEVICE(XMDUZ,XMZ,XMDEVICE,XMDVIENS,XMPRTHDR) ; For D.Device or H.Device
 N I,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTSK,ZTIO
 F I="XMDUZ","XMZ","XMDVIENS","XMPRTHDR" S ZTSAVE(I)=""
 S ZTIO=$P(XMDEVICE,".",2,99)
 S ZTDTH=$H
 S ZTRTN="DEVICE^XMTDO"
 S ZTDESC=$$EZBLD^DIALOG(42001,XMDEVICE) ; MailMan: To Device |1|
 D ^%ZTLOAD  ; Schedule Task
 Q
SERVER(XMZ,XMSERVER,XMSVIENS) ; For S.Server
 N I,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTSK,ZTIO
 D SETSTAT^XMTDO(XMSVIENS,$$EZBLD^DIALOG(42002.1)) ; Setting up server task
 F I="XMZ","XMSERVER","XMSVIENS" S ZTSAVE(I)=""
 S ZTDTH=$H
 S ZTRTN="SERVER^XMTDO"
 S ZTDESC=$$EZBLD^DIALOG(42002,XMSERVER) ; MailMan: To Server |1|
 S ZTIO=""
 D ^%ZTLOAD  ; Schedule Task
 D SETSTAT^XMTDO(XMSVIENS,$$EZBLD^DIALOG(42002.2,$G(ZTSK))) ; Server task #: |1|
 Q
BULLETIN(XMDUZ,XMBNAME,XMBIEN,XMPARM,XMBODY,XMTO,XMINSTR,ZTSK,XMATTACH) ;
 N I,XMB,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTIO
 I $G(XMBODY)'="",$D(@XMBODY)>9 D
 . S ZTSAVE("XMBODY")=""
 . S ZTSAVE($$OREF^DILF(XMBODY))=""
 F I="XMDUZ","XMBIEN","XMPARM(","XMTO","XMTO(","XMINSTR(","XMATTACH(" S ZTSAVE(I)=""
 I $G(XMINSTR("ADDR FLAGS"))["I" F I="^TMP(""XMY"",$J,","^TMP(""XMY0"",$J," S ZTSAVE(I)=""
 I $D(XMINSTR("LATER")) S ZTDTH=$$FMTH^XLFDT(XMINSTR("LATER"))
 E  S ZTDTH=$H
 S ZTRTN="TASK^XMXBULL"
 S ZTDESC=$$EZBLD^DIALOG(42003,XMBNAME) ; MailMan: Bulletin |1|
 S ZTIO=""
 D ^%ZTLOAD  ; Schedule Task
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HXMKPO   1606     printed  Sep 23, 2025@19:48:27                                                                                                                                                                                                       Page 2
XMKPO     ;ISC-SF/GMB-Post, other ;04/11/2002  07:08
 +1       ;;8.0;MailMan;;Jun 28, 2002
 +2       ; Replaces ^XMBPOST and the first part of ^XMS1 (ISC-WASH/THM/RWF/CAP)
 +3       ; Schedule a task to deliver bulletin, server, device
DEVICE(XMDUZ,XMZ,XMDEVICE,XMDVIENS,XMPRTHDR) ; For D.Device or H.Device
 +1        NEW I,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTSK,ZTIO
 +2        FOR I="XMDUZ","XMZ","XMDVIENS","XMPRTHDR"
               SET ZTSAVE(I)=""
 +3        SET ZTIO=$PIECE(XMDEVICE,".",2,99)
 +4        SET ZTDTH=$HOROLOG
 +5        SET ZTRTN="DEVICE^XMTDO"
 +6       ; MailMan: To Device |1|
           SET ZTDESC=$$EZBLD^DIALOG(42001,XMDEVICE)
 +7       ; Schedule Task
           DO ^%ZTLOAD
 +8        QUIT 
SERVER(XMZ,XMSERVER,XMSVIENS) ; For S.Server
 +1        NEW I,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTSK,ZTIO
 +2       ; Setting up server task
           DO SETSTAT^XMTDO(XMSVIENS,$$EZBLD^DIALOG(42002.1))
 +3        FOR I="XMZ","XMSERVER","XMSVIENS"
               SET ZTSAVE(I)=""
 +4        SET ZTDTH=$HOROLOG
 +5        SET ZTRTN="SERVER^XMTDO"
 +6       ; MailMan: To Server |1|
           SET ZTDESC=$$EZBLD^DIALOG(42002,XMSERVER)
 +7        SET ZTIO=""
 +8       ; Schedule Task
           DO ^%ZTLOAD
 +9       ; Server task #: |1|
           DO SETSTAT^XMTDO(XMSVIENS,$$EZBLD^DIALOG(42002.2,$GET(ZTSK)))
 +10       QUIT 
BULLETIN(XMDUZ,XMBNAME,XMBIEN,XMPARM,XMBODY,XMTO,XMINSTR,ZTSK,XMATTACH) ;
 +1        NEW I,XMB,ZTRTN,ZTDESC,ZTSAVE,ZTDTH,ZTIO
 +2        IF $GET(XMBODY)'=""
               IF $DATA(@XMBODY)>9
                   Begin DoDot:1
 +3                    SET ZTSAVE("XMBODY")=""
 +4                    SET ZTSAVE($$OREF^DILF(XMBODY))=""
                   End DoDot:1
 +5        FOR I="XMDUZ","XMBIEN","XMPARM(","XMTO","XMTO(","XMINSTR(","XMATTACH("
               SET ZTSAVE(I)=""
 +6        IF $GET(XMINSTR("ADDR FLAGS"))["I"
               FOR I="^TMP(""XMY"",$J,","^TMP(""XMY0"",$J,"
                   SET ZTSAVE(I)=""
 +7        IF $DATA(XMINSTR("LATER"))
               SET ZTDTH=$$FMTH^XLFDT(XMINSTR("LATER"))
 +8       IF '$TEST
               SET ZTDTH=$HOROLOG
 +9        SET ZTRTN="TASK^XMXBULL"
 +10      ; MailMan: Bulletin |1|
           SET ZTDESC=$$EZBLD^DIALOG(42003,XMBNAME)
 +11       SET ZTIO=""
 +12      ; Schedule Task
           DO ^%ZTLOAD
 +13       QUIT