vhVHMC ;Copieren van MSM naar Cache [ 12/27/2003 3:25 PM ] ; ; Routine save (MSM) ; Routine = "" (alle ooit gecopieerde routines copieren) ; Routine+ (alle ooit gecopieerde routines vanaf routine) ; Routine (Bepaalde routine) ; "?" (Routine opvragen via ^cRSEL) RS(Routine,BackGrnd) Do RS^vhVHMCR($G(Routine),$G(BackGrnd)) Quit ; ; Routine compare (MSM) ; Routine = "" (alle ooit gecopieerde routines vergelijken) ; Routine+ (alle ooit gecopieerde routines vanaf routine) ; Routine (Bepaalde routine) ; "?" (Routine opvragen via ^cRSEL) RC(Routine) Do RC^vhVHMCR($G(Routine)) Quit ; ; Global save (MSM) ; Global = "" (alle ooit gecopieerde globals copieren) ; Global+ (alle ooit gecopieerde globals vanaf global) ; Global (Bepaalde global) ; "?" (Global opvragen via ^%GSEL) GS(Global,BackGrnd) Do GS^vhVHMCG($G(Global),$G(BackGrnd)) Quit ; ; Global copy (MSM) ; Global = "" (alle ooit gecopieerde globals copieren) ; Global+ (alle ooit gecopieerde globals vanaf global) ; Global (Bepaalde global) ; "?" (Global opvragen via ^%GSEL) M2CCOPY(Global,BackGrnd) Do M2CCOPY^vhVHMCG($G(Global),$G(BackGrnd)) Quit ; ; Indien MSM,'Recalc -> geen CRC^MSMCOMP, enkel lijst MSMCOMP(Recalc,BackGrnd) Do MSMCOMP^vhVHMCG($G(Recalc),$G(BackGrnd)) Quit ; ; Copieren en vergelijken alle te copieren globals via M2CCOPY COPYCOMP Do M2CCOPY^vhVHMCG() Do MSMCOMP^vhVHMCG(1) Quit ; ; Opstarten restore (Cache) ; FileTyp = "R" (Routines) ; FileTyp = "G" (Globals) CSTART(FileTyp,BackGrnd) Do:$ZV["Cache" .Set FileTyp=$G(FileTyp),BackGrnd=$G(BackGrnd) .Write:'BackGrnd !,"Start autorestore ",$S(FileTyp="R":"routines",FileTyp="G":"globals",1:"?????"),! .Do @("C"_FileTyp_"RSTART^vhVHMC"_FileTyp_"("_BackGrnd_")") Quit ; ; Stoppen restore (Cache) ; FileTyp = "R" (Routines) ; FileTyp = "G" (Globals) CSTOP(FileTyp,BackGrnd) Do:$ZV["Cache" .Set FileTyp=$G(FileTyp),BackGrnd=$G(BackGrnd) .Write:'BackGrnd !,"Stop autorestore ",$S(FileTyp="R":"routines",FileTyp="G":"globals",1:"?????"),! .Do @("C"_FileTyp_"RSTOP^vhVHMC"_FileTyp) Quit ; ; Routine directory op printer (MSM) ; Copie = "" (alle routines) ; "C" (alle gecopieerde routines) ; "N" (alle niet gecopieerde routines) ; "S" (alle niet te copieeren routines) RD(Copie) Do RD^vhVHMCR($G(Copie)) Quit ; ; Global directory op printer (MSM) ; Copie = "" (alle globals) ; "C" (alle gecopieerde globals) ; "GS" (alle gecopieerde globals via ^%GS (geen vertaling nodig, sneller)) ; "ABIE" (alle gecopieerde globals via ^cABIE (met vertaling, trager)) ; "N" (alle niet gecopieerde globals) ; "S" (alle niet te copieeren globals) GD(Copie) Do GD^vhVHMCG($G(Copie)) Quit ; ; Opzetten van ^vhVHMC("P","DIR") SETPAR New R,System Set System=$$SYSTEM() Do:$ZV["MSM" .Kill ^vhVHMC("P") .Set ^vhVHMC("P","SYSTEM")=System .If $ZU(5)["BAD" Set ^vhVHMC("P","DIR")="\\Admin\D$\MSM2Cache\" .Else Set ^vhVHMC("P","DIR")="D:\MSM2Cache\" .Set ^vhVHMC("P","DIR","ROUT","CACHE01","FILE")="C01Rout.rsa" .Set ^vhVHMC("P","DIR","ROUT","CACHE01","CHECK")="C01Check.rsa" .Set ^vhVHMC("P","DIR","ROUT","CACHE01","READY")="C01Ready.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE01","FILE")="C01Glob.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE01","CHECK")="C01Check.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE01","READY")="C01Ready.gsa" .Set ^vhVHMC("P","DIR","ROUT","CACHE02","FILE")="C02Rout.rsa" .Set ^vhVHMC("P","DIR","ROUT","CACHE02","CHECK")="C02Check.rsa" .Set ^vhVHMC("P","DIR","ROUT","CACHE02","READY")="C02Ready.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE02","FILE")="C02Glob.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE02","CHECK")="C02Check.gsa" .Set ^vhVHMC("P","DIR","GLOB","CACHE02","READY")="C02Ready.gsa" Do:$ZV["Cache" .Kill ^vhVHMC("P") .Set ^vhVHMC("P","SYSTEM")=System .Set ^vhVHMC("P","DIR")="\\Admin\D$\MSM2Cache\" .Set R=$P(System,"\"),R=$E(R)_$E(R,$L(R)-1,$L(R)) .Set ^vhVHMC("P","DIR","ROUT","FILE")=R_"Rout.rsa" .Set ^vhVHMC("P","DIR","ROUT","CHECK")=R_"Check.rsa" .Set ^vhVHMC("P","DIR","ROUT","READY")=R_"Ready.gsa" .Set ^vhVHMC("P","DIR","GLOB","FILE")=R_"Glob.gsa" .Set ^vhVHMC("P","DIR","GLOB","CHECK")=R_"Check.gsa" .Set ^vhVHMC("P","DIR","GLOB","READY")=R_"Ready.gsa" .Set ^vhVHMC("P","WAIT","GLOB")=300 Quit ; SYSTEM() New Sytem Do:$ZV["MSM" .Set System="MSM\CACHE01\CACHE02" Do:$ZV["Cache" .Write !!,"1 = CACHE01 2 = CACHE02" .For Read !,"System? ",*System Set System=$C(System) Quit:"\1\2\"[("\"_System_"\") .Set System="CACHE0"_System_"\MSM" Quit System ;