Cache for Windows^INT^For vxVistA.org^~Format=Cache.S~ %RO on 08 Jul 2011 8:15 AM SISZWR^INT^1^62280,28357^ SISZWR ;SIS/LM - Zwrite globals to .ZWR files for cross-platform transfer ;1.0 ; (c) - Sea Island Systems, Inc. 2010 ; ; EN(PATH,LIST,EOL,HDR) ;[Public] ; ; PATH=[Required] HFS path ; LIST=[Optional] List of globals, by reference, e.g. ; LIST(GLOBAL1) ; LIST(GLOBAL2) ; . . . ; . . . ; Default to list at tag GLIST in this routine ; ; EOL= [Optional] End of line, default=$C(13,10) ; HDR= [Optional] Flag^Text - If TRUE insert 2-line header ; (expected by MUPIP LOAD). First line blank, ; ^Text to insert before date@time in line 2. ; defaults to canned text. ; ; I $L($G(PATH)) S EOL=$G(EOL,$C(13,10)),HDR=$G(HDR) N ERR,FILE,I,X E Q S:HDR&($P(HDR,"^",2)="") $P(HDR,"^",2)="$G" ;Default token=global name D:'($D(LIST)>1) .F I=1:1 S X=$P($T(GLIST+I),";;",2) Q:X="" S LIST(X)="" .Q Q:'($D(LIST)>1) S:$E(PATH,$L(PATH))'="\" PATH=PATH_"\" ;Windows ;To do: Generalize S (ERR,X)="" F S X=$O(LIST(X)) Q:X=""!ERR D .S FILE=PATH_X_".zwr" O FILE:("WNS"):2 E S ERR=1 Q .U FILE D HDR:HDR,ZW($NA(@("^"_X))) .C FILE .Q ; Q HDR ;[Private] - Two line header ; W EOL ;One blank line N H S H=$P(HDR,"^",2) W $S(H="$G":"Global: "_X,1:H)_" "_$$FMTE^XLFDT($$NOW^XLFDT)_" ZWR"_EOL Q ZW(SIS) ;[Private] - Simulate GT.M form of zwrite @SIS ; GT.M doubles quotes to make display equal to a valid SET command argument ; ; SIS=[Required] - $NAME of variable to zwrite ; I $D(@SIS)#2 W SIS_"="_$$Q(@SIS),EOL F S SIS=$Q(@SIS) Q:SIS="" W SIS_"="_$$Q(@SIS),EOL Q Q(X) ;[Private] - Quote X ; N C,I,Q,Y S (Q,Y)="""" F I=1:1:$L(X) S C=$E(X,I),Y=Y_C_$S(C=Q:Q,1:"") Q $$C(Y_Q) ; C(X) ;[Private] - (recursive) Convert controls in X ; I X?.E1.C.E N A,C,F,I,J,K,L,Y E Q X S F=0,L=$L(X),K=L F I=1:1:L S C=$E(X,I) S:'F&(C?1C) J=I,F=1 I F,'(C?1C) S K=I-1 Q I J>1 Q $E(X,1,J-1)_"""_"_$$C($E(X,J,L)) S Y="$C(" F I=J:1:K S Y=Y_$A($E(X,I))_"," S $E(Y,$L(Y))=")" Q:K=L Y Q Y_"_"""_$$C($E(X,K+1,L)) ; ; GLIST ;Default global list ;;%Z ;;%ZIB ;;%ZIS ;;%ZISL ;;%ZOSF ;;%ZTER ;;%ZTSCH ;;%ZTSK ;;%ZUA ;;%ZUT ;;%ZVEMS ;;%ZVFD ;;ABS ;;ACK ;;AFJ ;;ALPB ;;ANRV ;;APSPQA ;;AUPNPAT ;;AUPNPROB ;;AUPNVAST ;;AUPNVBB ;;AUPNVCA ;;AUPNVCHS ;;AUPNVCPT ;;AUPNVDEN ;;AUPNVDXP ;;AUPNVELD ;;AUPNVER ;;AUPNVEYE ;;AUPNVHF ;;AUPNVIF ;;AUPNVIMM ;;AUPNVINP ;;AUPNVLAB ;;AUPNVMED ;;AUPNVMIC ;;AUPNVMSR ;;AUPNVNOT ;;AUPNVNT ;;AUPNVPED ;;AUPNVPHN ;;AUPNVPOD ;;AUPNVPOV ;;AUPNVPRC ;;AUPNVPRV ;;AUPNVPT ;;AUPNVPTH ;;AUPNVRAD ;;AUPNVSIT ;;AUPNVSK ;;AUPNVTC ;;AUPNVTM ;;AUPNVTRC ;;AUPNVTRT ;;AUPNVTXC ;;AUPNVUNH ;;AUPNVXAM ;;AUTNPOV ;;AUTTASRC ;;AUTTEDT ;;AUTTEXAM ;;AUTTHF ;;AUTTIMM ;;AUTTLOC ;;AUTTSK ;;AUTTTFAC ;;AUTTTRT ;;AWC ;;BPS ;;BPSC ;;BPSECX ;;BPSF ;;BPSR ;;BPST ;;BPSTL ;;CRHD ;;DD ;;DDA ;;DENT ;;DG ;;DGAM ;;DGBT ;;DGCN ;;DGCPT ;;DGCR ;;DGEN ;;DGENA ;;DGHT ;;DGICD9 ;;DGIN ;;DGM ;;DGMS ;;DGMT ;;DGNT ;;DGP ;;DGPF ;;DGPM ;;DGPR ;;DGPT ;;DGQE ;;DGRDUA ;;DGRO ;;DGRU ;;DGS ;;DGSL ;;DGTF ;;DGWAIT ;;DI ;;DIA ;;DIAR ;;DIBT ;;DIC ;;DIE ;;DIPT ;;DIST ;;DISV ;;DIZ ;;DMSQ ;;DOPT ;;DOSV ;;DPT ;;DVB ;;EAS ;;EASPFS ;;EC ;;ECC ;;ECD ;;ECH ;;ECJ ;;ECK ;;ECL ;;ECP ;;ECR ;;ECT ;;ECX ;;EDR ;;EEO ;;ENCSN ;;ENG ;;ENGS ;;ESP ;;FB ;;FB583 ;;FB7078 ;;FBAA ;;FBAAA ;;FBAAC ;;FBAACNH ;;FBAAI ;;FBAAV ;;FBHL ;;FH ;;FHEN ;;FHING ;;FHNU ;;FHPT ;;FHUM ;;FSC ;;FSCD ;;GECS ;;GMPL ;;GMR ;;GMRD ;;GMT ;;HBHC ;;HDIS ;;HDISF ;;HDISV ;;HL ;;HLA ;;HLB ;;HLCS ;;HLD ;;HLEV ;;HLMA ;;HLS ;;HOLIDAY ;;IB ;;IBA ;;IBAM ;;IBAT ;;IBBAA ;;IBBAD ;;IBBAS ;;IBCN ;;IBCNR ;;IBD ;;IBE ;;IBM ;;IBQ ;;IBT ;;ICD ;;ICD0 ;;ICD9 ;;ICDYZ ;;ICM ;;ICPT ;;IVM ;;KMPD ;;KMPR ;;KMPS ;;LAB ;;LAC ;;LAHM ;;LAM ;;LAR ;;LBRY ;;LEX ;;LEXC ;;LEXT ;;LR ;;LRD ;;LRE ;;LRO ;;LRT ;;MAG ;;MAGD ;;MAGDAUDT ;;MAGDGEQR ;;MAGDHL7 ;;MAGDICOM ;;MAGDINPT ;;MAGDMLOG ;;MAGDOUTP ;;MAGDQR ;;MAGDWLST ;;MAGIXCVT ;;MAGQUEUE ;;MAGRT ;;MCAR ;;MDD ;;MDK ;;MDS ;;MHV ;;MPIF ;;MR ;;MXML ;;NURQ ;;NURSA ;;NURSC ;;NURSF ;;NVS ;;NVSTEMP ;;OCXD ;;OCXS ;;OFM ;;ONCO ;;OOPS ;;OR ;;ORA ;;ORD ;;ORE ;;ORRT ;;ORYX ;;PPP ;;PRC ;;PRCA ;;PRCAK ;;PRCD ;;PRCF ;;PRCH ;;PRCN ;;PRCP ;;PRCS ;;PRCT ;;PRCU ;;PRCV ;;PRPF ;;PRPFT ;;PRSD ;;PRSE ;;PRSP ;;PRSPC ;;PRST ;;PS ;;PSB ;;PSCST ;;PSD ;;PSDRUG ;;PSI ;;PSNDF ;;PSNTRAN ;;PSOARC ;;PSRX ;;PSUDEM ;;PSX ;;PSXARC ;;PTX ;;PX ;;PXD ;;PXRM ;;PXRMD ;;PXRMINDX ;;PXRMPT ;;PXRMXP ;;PXRMXT ;;QA ;;RA ;;RABTCH ;;RADPT ;;RADPTN ;;RAMIS ;;RAO ;;RARPT ;;RC ;;RCD ;;RCPS ;;RCPSE ;;RCPSS ;;RCT ;;RCXV ;;RCY ;;RGEQ ;;RGEQASN ;;RGEQEXC ;;RGHL7 ;;RGSITE ;;RGSTAT ;;RMIM ;;RMPF ;;RMPO ;;RMPR ;;RMPRA ;;ROR ;;RORDATA ;;RT ;;RTV ;;SC ;;SCE ;;SCPT ;;SCRS ;;SCTM ;;SD ;;SDAM ;;SDASE ;;SDASF ;;SDD ;;SDSC ;;SDV ;;SDWL ;;SGM ;;SOWK ;;SPNL ;;SRF ;;SRO ;;SRP ;;SRS ;;SRT ;;SRU ;;SYS ;;TIU ;;TMP ;;USC ;;USR ;;VA ;;VAS ;;VAT ;;VDEFHL7 ;;VEE ;;VFD ;;VFDV ;;VIC ;;VSIT ;;WII ;;WV ;;XDRM ;;XHD ;;XHLP ;;XIP ;;XMB ;;XMBPOST ;;XMBS ;;XMBX ;;XMD ;;XOB ;;XPD ;;XT ;;XTID ;;XTMP ;;XTV ;;XUCS ;;XUSEC ;;XUSSPKI ;;XUTL ;;XWB ;;YS ;;YSA ;;YSCL ;;YSD ;;YSG ;;YSR ;;YSTX ;;YTD ;;YTT ;;YTX ;;rhBlowfish ;;