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

ENTIRRX.m

Go to the documentation of this file.
ENTIRRX ;WOIFO/SAB - Signature Exception Report ;2/4/2008
 ;;7.0;ENGINEERING;**87**;Aug 17, 1993;Build 16
 ;
 N DIR,DIROUT,DIRUT,DTOUT,DUOUT,ENADT,ENTYP,X,Y
 ;
 ; ask type
 S DIR(0)="S^E:ELECTRONICALLY SIGNED;C:CERTIFIED HARD COPY SIGNATURE;B:BOTH"
 S DIR("A")="Select type of signature to check"
 S DIR("B")="BOTH"
 D ^DIR K DIR Q:$D(DIRUT)
 S ENTYP=Y
 ;
 ; ask anniversary date
 S DIR(0)="D"
 S DIR("A")="Report signatures at least 1 year old as of "
 S DIR("B")=$$FMTE^XLFDT($$FMADD^XLFDT(DT,-1))
 D ^DIR K DIR Q:$D(DIRUT)
 S ENADT=Y
 ;
 ; ask device
 S %ZIS="Q" D ^%ZIS G:POP EXIT
 I $D(IO("Q")) D  G EXIT
 . S ZTRTN="QEN^ENTIRRX",ZTDESC="Signature Exception Report"
 . S ZTSAVE("ENTYP")="",ZTSAVE("ENADT")=""
 . D ^%ZTLOAD,HOME^%ZIS K ZTSK,IO("Q")
 ;
QEN ; queued entry
 U IO
 ;
 ; generate output
 K ENT S ENT=0
 S (END,ENPG)=0 D NOW^%DTC S Y=% D DD^%DT S ENDT=Y
 S ENCDT=($E(ENADT,1,3)-1)_$E(ENADT,4,7) ; computed date (1 year before)
 S ENADTE=$$FMTE^XLFDT(ENADT) ; external format for anniversary date
 D HD
 ;
 ; print data
 ; loop thru active assignments by owner and equipment
 S ENOWN=0 F  S ENOWN=$O(^ENG(6916.3,"AOA",ENOWN)) Q:'ENOWN  D  Q:END
 . S ENEQ=0 F  S ENEQ=$O(^ENG(6916.3,"AOA",ENOWN,ENEQ)) Q:'ENEQ  D  Q:END
 . . S ENDA=0
 . . F  S ENDA=$O(^ENG(6916.3,"AOA",ENOWN,ENEQ,ENDA)) Q:'ENDA  D  Q:END
 . . . S ENY=$G(^ENG(6916.3,ENDA,0))
 . . . Q:$P(ENY,U,5)=""  ; not signed
 . . . I ENTYP="E",$P(ENY,U,7)'="" Q  ; only check e-sigs
 . . . I ENTYP="C",$P(ENY,U,7)="" Q  ; only check certified sigs
 . . . Q:$P($P(ENY,U,5),".")>ENCDT  ; was signed after computed date
 . . . ;
 . . . ; report assignment
 . . . S ENT=ENT+1
 . . . ;
 . . . ; display assignment data
 . . . I $Y+6>IOSL D HD Q:END
 . . . W !,$$GET1^DIQ(6916.3,ENDA,1)
 . . . W ?32,ENEQ
 . . . W ?44,$$GET1^DIQ(6916.3,ENDA,20)
 . . . W ?55,$$GET1^DIQ(6916.3,ENDA,21)
 . . . W !,"  ",$E($$GET1^DIQ(6914,ENEQ,3),1,76)
 ;
 I 'END D
 . ; report footer
 . I $Y+4>IOSL D HD Q:END
 . W !!,"Count of signatures on report = ",ENT
 . I $E(IOST,1,2)="C-" S DIR(0)="E" D ^DIR K DIR
 ;
 D ^%ZISC
 ;
EXIT I $D(ZTQUEUED) S ZTREQ="@"
 K DIR,DIROUT,DIRUT,DIWF,DIWL,DTOUT,DUOUT,POP,X,Y
 K ENADT,ENADTE,ENCDT,ENDA,ENEQ,ENOWN,ENT,ENTYP,ENY
 K END,ENDT,ENPG
 Q
 ;
HD ; header
 I $E(IOST,1,2)="C-",ENPG S DIR(0)="E" D ^DIR K DIR I 'Y S END=1 Q
 I $E(IOST,1,2)="C-"!ENPG W @IOF
 S ENPG=ENPG+1
 W "SIGNATURE EXCEPTION REPORT",?48,ENDT,?72,"page ",ENPG,!
 W "  for "
 I ENTYP="E" W "electronic "
 I ENTYP="C" W "hard copy "
 W "signatures at least one year old as of ",ENADTE,!!
 W "Owner",?32,"Entry #",?44,"Status",?55,"Status Date",!
 W "------------------------------",?32,"----------"
 W ?44,"---------",?55,"-----------"
 Q
 ;
 ;ENTIRRX