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

ACGSCLS.m

Go to the documentation of this file.
  1. ACGSCLS ;IHS/OIRM/DSD/THL,AEF - CLOSE OUT REPORT; [ 03/27/2000 2:22 PM ]
  1. ;;2.0t1;CONTRACT INFORMATION SYSTEM;;FEB 16, 2000
  1. ;;UTILITY TO PRINT CLOSE-OUT REPORT
  1. EN D ^XBKVAR
  1. D EN1
  1. EXIT K ACG,ACGQUIT,ACG15,ACG154,ACG155,ACG26,ACG26T,ACGAVG,ACGBEG,ACGBEGIN,ACGEND,ACGDOLLR,ACGDT,ACGDT1,ACGDTX,ACGDT1X,ACGIHS1,ACGION,ACGWAIT
  1. Q
  1. EN1 ;SETUP FOR CLOSE OUT REPORT
  1. F ACG="BEGIN","END","DOLLAR","ZIS" D @ACG Q:$D(ACGQUIT)
  1. Q
  1. PRINT ;EP;TO PRINT CLOSE OUT REPORT
  1. S (ACG26,ACG26T,ACG(1),ACG(20),ACGWAIT(1),ACGWAIT(20),ACGAVG(1),ACGAVG(20))=0
  1. F S ACGBEG=$O(^ACGS("X",ACGBEG)) Q:'ACGBEG!(ACGBEG>ACGEND) D
  1. .S ACG=0
  1. .F S ACG=$O(^ACGS("X",ACGBEG,ACG)) Q:'ACG I $D(^ACGS(ACG,0)),$D(^("DT")),$D(^("DT1")),$D(^("IHS1")) S ACGDT=^("DT"),ACGDT1=^("DT1"),ACGIHS1=^("IHS1") D P
  1. D R
  1. Q
  1. P ;
  1. D Q
  1. S ACG154=$P(ACGIHS1,U,4),ACG155=$P(ACGIHS1,U,5)
  1. S ACG15=$S($P(ACGDTX,U,20)>19:20,1:1),$P(ACG(ACG15),U)=$P(ACG(ACG15),U)+1,$P(ACG(ACG15),U,2)=$P(ACG(ACG15),U,2)+ACG26
  1. I 'ACG155 S $P(ACGWAIT(ACG15),U)=$P(ACGWAIT(ACG15),U)+1,$P(ACGWAIT(ACG15),U,2)=$P(ACGWAIT(ACG15),U,2)+ACG26
  1. S X1=ACG155,X2=ACG154
  1. D ^%DTC
  1. S $P(ACGAVG(ACG15),U)=$P(ACGAVG(ACG15),U)+1,$P(ACGAVG(ACG15),U,2)=$P(ACGAVG(ACG15),U,2)+X
  1. Q
  1. Q ;COUNT NUMBERS AND DOLLARS OF ADMINISTRATIVELY CLOSED CONTRACTS
  1. S ACGX=0
  1. F S ACGX=$O(^ACGS("C",ACG,ACGX)) Q:'ACGX I $D(^ACGS(ACGX,0)),$D(^("DT")),$D(^("DT1")) S ACGDTX=^("DT"),ACGDT1X=^("DT1"),ACG26=ACG26+$P(ACGDT1X,U,5)
  1. Q:ACG26'>ACGDOLLR
  1. Q
  1. R ;PRINT REPORT
  1. S Y=ACGBEGIN X ^DD("DD") S ACGBEGIN=Y
  1. S Y=ACGEND X ^DD("DD") S ACGEND=Y
  1. W @IOF,!,"Contracts",$S(ACGDOLLR>0:" over "_$FN(ACGDOLLR,"P",0),1:"")," with associated dollars,",!,"closed out between ",ACGBEGIN," and ",ACGEND,!,"following administrative close-out procedure: "
  1. W !!?10,"Cost type contracts.: Number: ",$J(+ACG(20),10),?$X+3,$J($FN($P(ACG(20),U,2),"P,",0),12)
  1. W !?10,"Other than cost type: Number: ",$J(+ACG(1),10),?$X+3,$J($FN($P(ACG(1),U,2),"P,",0),12)
  1. W !!,"Open contracts awaiting closeout:"
  1. W !!?10,"Cost type contracts.: Number: ",$J(+ACGWAIT(20),10),?$X+3,$J($FN($P(ACGWAIT(20),U,2),"P,",0),12)
  1. W !?10,"Other than cost type: Number: ",$J(+ACGWAIT(1),10),?$X+3,$J($FN($P(ACGWAIT(1),U,2),"P,",0),12)
  1. W !!,"Average length of time required to close out a contract."
  1. W !!?10,"Cost type contracts.: Number: ",$J($S(+ACGAVG(20)<1:0,1:$P(ACGAVG(20),U,2)/30/+ACGAVG(20)),10)
  1. W !?10,"Other than cost type: Number: ",$J($S(+ACGAVG(1)<1:0,1:$P(ACGAVG(1),U,2)/30/+ACGAVG(1)),10)
  1. Q
  1. BEGIN ;ENTER BEGINNING DATE FOR SEARCH
  1. S DIR(0)="DO",DIR("A")="Beginning Date",DIR("?")="Enter the Beginning Date for inclusion of closed Contracts"
  1. W !
  1. D DIR^ACGSDIC
  1. Q:+Y<1!$D(ACGQUIT)
  1. S (ACGBEGIN,ACGBEG)=+Y
  1. Q
  1. END ;ENTER ENDING DATE FOR SEARCH
  1. S DIR(0)="DO",DIR("A")="Ending Date...",DIR("?")="Enter the Ending Date for inclusion of closed Contracts"
  1. W !
  1. D DIR^ACGSDIC
  1. Q:+Y<1!$D(ACGQUIT)
  1. S ACGEND=+Y
  1. Q
  1. CLOSED ;SELECT TYPE OF CLOSURE
  1. S DIR(0)="SO^2:PHYSICALL CLOSED;3:ADMINISTRATIVELY CLOSED",DIR("?")="Enter the code which indicates the type of action for which you wish a report."
  1. W !
  1. D DIR^ACGFDIC
  1. Q:Y<2!$D(ACGQUIT)
  1. S ACGTYPE=Y,ACGXREF=$S(Y=2:"X",1:"Y")
  1. Q
  1. DOLLAR D DOLLAR^ACGSRT
  1. Q:$D(ACGOUT)
  1. I '$D(ACGDOLLR) S ACGDOLLR=0
  1. I ACGDOLLR=0 K ACGQUIT
  1. Q
  1. ZIS S ZTRTN="PRINT^ACGSCLS"
  1. D ^ACGSZIS
  1. I '$D(IO("Q")) D
  1. .I '$D(ZTQUEUED) S (ACGIOP,IOP)=ION D ^%ZIS I POP S ACGQUIT="" Q
  1. .U IO
  1. .D PRINT
  1. .D DONE^ACGSZIS
  1. .I $E(IOST,1,2)="C-" D HOLD^ACGSMENU
  1. Q