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

ENY2REPC.m

Go to the documentation of this file.
  1. ENY2REPC ;;(WIRMFO)/DH-Y2K Detail by Man~Mod ;1.19.99
  1. ;;7.0;ENGINEERING;**61**;August 17, 1993
  1. ;
  1. DEQDET ;
  1. I $D(ZTQUEUED) D
  1. . K ^TMP($J)
  1. . S %X="^XUTL(""ENY2"",DATE,",%Y="^TMP($J," D %XY^%RCR K DATE
  1. . N ESCAPE,ENY2K,DATE,MFG
  1. . K ^XUTL("ENY2")
  1. N MOD,PAGE,DATE,LINE,TOTAL,STATION
  1. S PAGE=0 D NOW^%DTC S Y=% X ^DD("DD") S DATE("PRNT")=$P(Y,":",1,2)
  1. S STATION("PARNT")=$P($G(^DIC(6910,1,0)),U,2)
  1. S STATION=STATION("PARNT")
  1. F J="COUNT","ACT","EST" S TOTAL(J)=0,TOTAL(STATION,J)=0 ; initialize
  1. K ^TMP($J,"ENY2")
  1. S DA=0 F S DA=$O(^TMP($J,DA)) Q:'DA D:$D(^ENG(6914,DA,0))
  1. . I '$D(ZTQUEUED) W:'(DA#100) "." ; activity indicator
  1. . S CAT=$P($G(^ENG(6914,DA,11)),U) S:CAT="" CAT="Null"
  1. . I ENSUP,"^FC^NA^"[(U_CAT_U) Q ; suppress the 'don't cares'
  1. . I ALLSTN S STATION=$S($P($G(^ENG(6914,DA,9)),U,5)]"":$P(^(9),U,5),1:STATION("PARNT")) I '$D(TOTAL(STATION)) S TOTAL(STATION,"GRAND")=0 F J="COUNT","ACT","EST" S TOTAL(STATION,J)=0
  1. . S MFG(0)=$P($G(^ENG(6914,DA,1)),U,4)
  1. . I 'MFG(0),'$G(ENY2K("INC")) Q
  1. . I 'MFG(0) S MFG("E")="unknown"
  1. . E S MFG("E")=$E($P(^ENG("MFG",MFG(0),0),U),1,25) S:MFG("E")="" MFG("E")=" "
  1. . S MOD=$P($G(^ENG(6914,DA,1)),U,2)
  1. . I MOD="",'$G(ENY2K("INC")) Q
  1. . I MOD="" S MOD("E")="unknown"
  1. . E S MOD("E")=$S($L(MOD)<21:MOD,1:$E(MOD,1,19)_"*")
  1. . S EQ(0)=$P($G(^ENG(6914,DA,1)),U) S:EQ(0)="" EQ("E")="Null"
  1. . I EQ(0) S EQ("E")=$E($P($G(^ENG(6911,EQ(0),0)),U),1,20) S:EQ("E")="" EQ("E")="Null"
  1. . F J="EDATE","ADATE","ECOST","ACOST","ACTN" S ENY2K(J)=""
  1. . S EN=$G(^ENG(6914,DA,11)) I EN]"" D
  1. .. S Y=$P(EN,U,2) I Y>0 S ENY2K("EDATE")=$E(Y,4,5)_"/"_$E(Y,6,7)_"/"_$E(Y,2,3)
  1. .. S Y=$P(EN,U,10) I Y>0 S ENY2K("ADATE")=$E(Y,4,5)_"/"_$E(Y,6,7)_"/"_$E(Y,2,3)
  1. .. S ENY2K("ECOST")=$P(($P(EN,U,3)+.5),"."),ENY2K("ACOST")=$P(($P(EN,U,4)+.5),"."),ENY2K("ACTN")=$P(EN,U,6)
  1. . S ^TMP($J,"ENY2",STATION,MFG("E"),MOD("E"),EQ("E"),DA)=CAT_U_ENY2K("EDATE")_U_ENY2K("ADATE")_U_ENY2K("ECOST")_U_ENY2K("ACOST")_U_ENY2K("ACTN")
  1. . S TOTAL(STATION,"COUNT")=TOTAL(STATION,"COUNT")+1,TOTAL(STATION,"EST")=TOTAL(STATION,"EST")+ENY2K("ECOST"),TOTAL(STATION,"ACT")=TOTAL(STATION,"ACT")+ENY2K("ACOST")
  1. I '$D(^TMP($J,"ENY2")) D DETHDR W !!,"<There are no equipment records with outstanding Y2K issues>" Q
  1. S STATION=0 F S STATION=$O(^TMP($J,"ENY2",STATION)) Q:STATION="" S TOTAL("COUNT")=TOTAL("COUNT")+TOTAL(STATION,"COUNT"),TOTAL("EST")=TOTAL("EST")+TOTAL(STATION,"EST"),TOTAL("ACT")=TOTAL("ACT")+TOTAL(STATION,"ACT")
  1. ;
  1. DETPRNT ; print the detail
  1. U IO
  1. I '$D(^TMP($J)) D DETHDR W !!,?15,"<Nothing to print>" D HOLD Q
  1. S STATION=0 F S STATION=$O(^TMP($J,"ENY2",STATION)) Q:STATION=""!($G(ESCAPE)) D DETHDR D D HOLD Q:$G(ESCAPE) W @IOF
  1. . S MFG("E")=0,MOD("E")=0 F S MFG("E")=$O(^TMP($J,"ENY2",STATION,MFG("E"))) Q:MFG("E")=""!($G(ESCAPE)) F S MOD("E")=$O(^TMP($J,"ENY2",STATION,MFG("E"),MOD("E"))) Q:MOD("E")=""!($G(ESCAPE)) D Q:$G(ESCAPE)
  1. .. S EQ("E")=0 F S EQ("E")=$O(^TMP($J,"ENY2",STATION,MFG("E"),MOD("E"),EQ("E"))) Q:EQ("E")=""!($G(ESCAPE)) S DA=0 F S DA=$O(^TMP($J,"ENY2",STATION,MFG("E"),MOD("E"),EQ("E"),DA)) Q:'DA!($G(ESCAPE)) S EN=^(DA) D
  1. ... I '$D(ZTQUEUED),IO'=IO(0),'(DA#50) U IO(0) W "." U IO ; activity indicator
  1. ... W !,MFG("E")_"~"_MOD("E")_" ",?42,EQ("E")_" ",?64,$J(DA,10),?75,$J($P(EN,U),4),?82,$P(EN,U,2),?93,$P(EN,U,3),?104,$J($P(EN,U,4),7),?114,$J($P(EN,U,5),7),?124,$P(EN,U,6)
  1. ... K ^TMP($J,"ENY2",STATION,MFG("E"),MOD("E"),EQ("E"),DA)
  1. ... S LINE=LINE+1 I (IOSL-LINE)'>6 D TRLR,HOLD Q:$G(ESCAPE) D:$D(^TMP($J,"ENY2")) DETHDR
  1. . Q:$G(ESCAPE) K X S $P(X,"-",130)="-" W !,X
  1. . W !,"COUNT",?64,$J(TOTAL(STATION,"COUNT"),10)
  1. . W !,"TOTALS",?103,"$"_$J(TOTAL(STATION,"EST"),7),?113,"$"_$J(TOTAL(STATION,"ACT"),7) S LINE=LINE+3
  1. . I ALLSTN,'$O(^TMP($J,"ENY2",STATION)) D
  1. .. W !,"COUNT FOR ALL STATIONS",?64,$J(TOTAL("COUNT"),10)
  1. .. W !,"TOTALS FOR ALL STATIONS",?103,"$"_$J(TOTAL("EST"),7),?113,"$"_$J(TOTAL("ACT"),7) S LINE=LINE+2
  1. . F Q:(IOSL-LINE)'>5 W ! S LINE=LINE+1
  1. . D TRLR
  1. Q ;return to ^eny2rep3 for exit
  1. ;
  1. DETHDR ; header for Y2K detail
  1. W:$E(IOST,1,2)="C-"!(PAGE) @IOF S PAGE=PAGE+1,LINE=3
  1. W "Detailed Y2K Equipment Report "
  1. W $S(CRITER=1:"by EQUIPMENT CATEGORY",CRITER=2:"by CATEGORY STOCK NUMBER",CRITER=3:"by CMR",CRITER=4:"by SERVICE",CRITER=5:"by MANUFACTURER",CRITER=6:"by LOCAL ID",CRITER=7:"by RESPONSIBLE SHOP",1:"for ENTIRE EQUIP FILE")
  1. W " ("_$E(SORT,1,20)_") "_DATE("PRNT")_" "_$S('ALLSTN:"Consolidated",1:"Station: "_STATION)_" Page: "_PAGE
  1. I ENSUP W !,"Equipment Records with Y2K Category of 'FC' or 'NA' are not being counted." S LINE=LINE+1
  1. W !,"Manufacturer~Model",?45,"Equipment Category",?67,"Entry #",?76,"Y2K Est Date Act Date Est Cost Act Cost Action"
  1. K X S $P(X,"-",130)="-" W !,X
  1. Q
  1. ;
  1. TRLR ; print legend at bottom
  1. K X S $P(X,"-",130)="-" W !,X
  1. W !,"Y2K: FC=>Fully Compliant NC=>Noncompliant CC=>Conditionally Compliant NA=>Not Applicable Null=>No Y2K Information"
  1. W !,"ACTION (Noncompliant Only): REP=>Replace RET=>Retire UPD=>Update to Full Compliance USE=>Use Without an Update"
  1. W !
  1. Q
  1. ;
  1. HOLD Q:$E(IOST,1,2)'="C-"!($G(ESCAPE))
  1. W !!,"Press <RETURN> to continue, '^' to escape..." R X:DTIME
  1. I '$T!($E(X)="^") S ESCAPE=1
  1. Q
  1. ;ENY2REPC