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

SCCVEGD2.m

Go to the documentation of this file.
  1. SCCVEGD2 ;ALB/MJK - Estimate Summary ; 30-NOV-1998
  1. ;;5.3;Scheduling;**211,1015**;Aug 13, 1993;Build 21
  1. ;
  1. EN ; -- main entry point for SCCV GLOBAL ESTIMATE SUMMARY
  1. N SCDET,DIR
  1. S DIR(0)="YA",DIR("B")="No",DIR("A")="Include CST Detail? "
  1. D ^DIR
  1. K DIR
  1. IF $D(DIRUT) G ENQ
  1. S SCDET=+Y
  1. D EN^VALM("SCCV CONV ESTIMATE SUMMARY")
  1. ENQ Q
  1. ;
  1. HDR ; -- header code
  1. ;S VALMHDR(1)=" "
  1. Q
  1. ;
  1. INIT ; -- init variables and list array
  1. N SCLINE,SCNT
  1. S (SCNT,SCLINE)=0
  1. D GLOBAL
  1. D ENTRY
  1. D MOD
  1. D PER
  1. D FOOTER
  1. S VALMCNT=SCNT,VALMBG=1
  1. IF 'SCDET D
  1. . D CHGCAP^VALM("CST"," ")
  1. . D CHGCAP^VALM("START DATE"," ")
  1. Q
  1. ;
  1. SET(STR) ; -- set line in array
  1. S SCLINE=SCLINE+1
  1. S SCNT=SCNT+1
  1. D SET^VALM10(SCLINE,STR)
  1. Q
  1. ;
  1. SECT(STR) ; -- set section hdr in array
  1. N Y
  1. S Y=""
  1. S Y=$$SETSTR^VALM1(STR,Y,2,$L(STR))
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,2,$L(STR),IORVON,IORVOFF)
  1. Q
  1. ;
  1. GLOBAL ; -- build global growth lines
  1. N SCI,DIC,DR,DIQ,DA,X,Y,Z,SCTOT,SCSTDT,FLD
  1. S DIC=404.98,DR=".03;207:211",DIQ="SCDATA",DIQ(0)="IE"
  1. S SCI=0
  1. ;
  1. D SECT("Global Block Growth")
  1. ;
  1. S SCSTDT=0
  1. F S SCSTDT=$O(^SD(404.98,"C",SCSTDT)) Q:'SCSTDT D
  1. . F S SCI=$O(^SD(404.98,"C",SCSTDT,SCI)) Q:'SCI S X=$G(^SD(404.98,SCI,0)) D
  1. . . N SCDATA
  1. . . IF $P(X,U,9) Q ; -- canceled
  1. . . S DA=SCI D EN^DIQ1
  1. . . S Y=""
  1. . . S Y=$$SETFLD^VALM1($J(SCI,4),Y,"CST")
  1. . . S Y=$$SETFLD^VALM1($$FMTE^XLFDT(SCDATA(404.98,SCI,.03,"I"),"5ZD"),Y,"START DATE")
  1. . . D FLDUPD("SCE",207,.Y)
  1. . . D FLDUPD("AUPNVSIT",208,.Y)
  1. . . D FLDUPD("AUPNVPRV",209,.Y)
  1. . . D FLDUPD("AUPNVPOV",210,.Y)
  1. . . D FLDUPD("AUPNVCPT",211,.Y)
  1. . . IF SCDET D SET(Y)
  1. ;
  1. S Y=" Total Blocks"
  1. D TOTUPD("SCE",207,.Y)
  1. D TOTUPD("AUPNVSIT",208,.Y)
  1. D TOTUPD("AUPNVPRV",209,.Y)
  1. D TOTUPD("AUPNVPOV",210,.Y)
  1. D TOTUPD("AUPNVCPT",211,.Y)
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. ;
  1. S Z=0 F FLD=207:1:211 S Z=Z+$G(SCTOT(FLD))
  1. D SET(" (Grand Total: "_$FN(Z,",")_")")
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. D SET(" ")
  1. Q
  1. ;
  1. ENTRY ; -- build new entry lines
  1. N SCI,DIC,DR,DIQ,DA,X,Y,Z,SCTOT,SCSTDT
  1. S DIC=404.98,DR=".03;2.07:2.11",DIQ="SCDATA",DIQ(0)="IE"
  1. S SCI=0
  1. ;
  1. D SECT("New Entries")
  1. ;
  1. S SCSTDT=0
  1. F S SCSTDT=$O(^SD(404.98,"C",SCSTDT)) Q:'SCSTDT D
  1. . F S SCI=$O(^SD(404.98,"C",SCSTDT,SCI)) Q:'SCI S X=$G(^SD(404.98,SCI,0)) D
  1. . . N SCDATA
  1. . . IF $P(X,U,9) Q ; -- canceled
  1. . . S DA=SCI D EN^DIQ1
  1. . . S Y=""
  1. . . S Y=$$SETFLD^VALM1($J(SCI,4),Y,"CST")
  1. . . S Y=$$SETFLD^VALM1($$FMTE^XLFDT(SCDATA(404.98,SCI,.03,"I"),"5ZD"),Y,"START DATE")
  1. . . D FLDUPD("SCE",2.07,.Y)
  1. . . D FLDUPD("AUPNVSIT",2.08,.Y)
  1. . . D FLDUPD("AUPNVPRV",2.09,.Y)
  1. . . D FLDUPD("AUPNVPOV",2.10,.Y)
  1. . . D FLDUPD("AUPNVCPT",2.11,.Y)
  1. . . IF SCDET D SET(Y)
  1. ;
  1. S Y=" Total Entries"
  1. D TOTUPD("SCE",2.07,.Y)
  1. D TOTUPD("AUPNVSIT",2.08,.Y)
  1. D TOTUPD("AUPNVPRV",2.09,.Y)
  1. D TOTUPD("AUPNVPOV",2.10,.Y)
  1. D TOTUPD("AUPNVCPT",2.11,.Y)
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. D SET(" ")
  1. Q
  1. MOD ; -- build modified entry lines
  1. N SCI,DIC,DR,DIQ,DA,X,Y,Z,SCTOT,SCSTDT
  1. S DIC=404.98,DR=".03;2.07:2.08",DIQ="SCDATA",DIQ(0)="IE"
  1. S SCI=0
  1. ;
  1. D SECT("Modified Entries")
  1. ;
  1. S SCSTDT=0
  1. F S SCSTDT=$O(^SD(404.98,"C",SCSTDT)) Q:'SCSTDT D
  1. . F S SCI=$O(^SD(404.98,"C",SCSTDT,SCI)) Q:'SCI S X=$G(^SD(404.98,SCI,0)) D
  1. . . N SCDATA,Z
  1. . . IF $P(X,U,9) Q ; -- canceled
  1. . . S DA=SCI D EN^DIQ1
  1. . . S Y=""
  1. . . S Y=$$SETFLD^VALM1($J(SCI,4),Y,"CST")
  1. . . S Y=$$SETFLD^VALM1($$FMTE^XLFDT(SCDATA(404.98,SCI,.03,"I"),"5ZD"),Y,"START DATE")
  1. . . S Z=SCDATA(404.98,SCI,2.08,"E")-SCDATA(404.98,SCI,2.07,"E")
  1. . . S Y=$$SETFLD^VALM1($J($FN(Z,","),11),Y,"SCE")
  1. . . S SCTOT(2.07)=$G(SCTOT(2.07))+Z
  1. . . IF SCDET D SET(Y)
  1. ;
  1. S Y=" Total Entries"
  1. D TOTUPD("SCE",2.07,.Y)
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. D SET(" ")
  1. Q
  1. ;
  1. PER ; -- build blocks per records lines
  1. N Y,SCDATA
  1. D ESTGROW^SCCVEGU1("SCDATA")
  1. ;
  1. D SECT("Global Block Estimates per Entry")
  1. ;
  1. S Y=" New Entries"
  1. S Y=$$SETFLD^VALM1($J(SCDATA("SCE","NEW"),11),Y,"SCE")
  1. S Y=$$SETFLD^VALM1($J(SCDATA("AUPNVSIT"),11),Y,"AUPNVSIT")
  1. S Y=$$SETFLD^VALM1($J(SCDATA("AUPNVPRV"),11),Y,"AUPNVPRV")
  1. S Y=$$SETFLD^VALM1($J(SCDATA("AUPNVPOV"),11),Y,"AUPNVPOV")
  1. S Y=$$SETFLD^VALM1($J(SCDATA("AUPNVCPT"),11),Y,"AUPNVCPT")
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. ;
  1. S Y=" Updated Entries"
  1. S Y=$$SETFLD^VALM1($J(SCDATA("SCE","UPD"),11),Y,"SCE")
  1. D SET(Y)
  1. D CNTRL^VALM10(SCLINE,1,79,IOINHI,IOINORM)
  1. Q
  1. ;
  1. D SET(" ")
  1. D SET(" ")
  1. D SET(" Note: Estimates are assuming the following:")
  1. D SET(" Block Size: "_$$BLKSIZE^SCCVEGU1()_" bytes")
  1. D SET(" Global Efficiency: 70%")
  1. Q
  1. ;
  1. FLDUPD(NAME,FLD,STR) ; -- update line with field info
  1. N Z
  1. S Z=SCDATA(404.98,SCI,FLD,"E")
  1. S STR=$$SETFLD^VALM1($J($FN(Z,","),11),STR,NAME)
  1. S SCTOT(FLD)=$G(SCTOT(FLD))+Z
  1. Q
  1. ;
  1. TOTUPD(NAME,FLD,STR) ; -- update total line with field total
  1. S STR=$$SETFLD^VALM1($J($FN(+$G(SCTOT(FLD)),","),11),STR,NAME)
  1. Q
  1. ;
  1. HELP ; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ; -- exit code
  1. K ^TMP("SCCV GESTIMATE",$J)
  1. Q
  1. ;
  1. EXPND ; -- expand code
  1. Q
  1. ;