[613] | 1 | DIFG0A ;SFISC/DG(OHPRD)-CALLED FOR CONTEXT SWITCH ;6/5/92 12:32 PM
|
---|
| 2 | ;;22.0;VA FileMan;;Mar 30, 1999
|
---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | SWITCH ;CONTEXT SWITCH
|
---|
| 5 | N DIC,DIFGM,DIFGNDC,DA,DIFGINCR,DIFGSKIP,DIFGDI,DIFGMO,DIFGPOIN
|
---|
| 6 | S DIFG=DIFG+1,(DIFGNDC,DIFGLAGO)=0
|
---|
| 7 | S DIFGTYPE="FILE"
|
---|
| 8 | D BASE^DIFG0
|
---|
| 9 | I DIFGER G X1
|
---|
| 10 | D FUNC^DIFG0
|
---|
| 11 | I '$D(DIFG("NOLKUP")) D BEGEND
|
---|
| 12 | I DIFGER G X1
|
---|
| 13 | D SET
|
---|
| 14 | D KILLVAR0
|
---|
| 15 | D FILE^DIFG
|
---|
| 16 | S DIFG=DIFG-1
|
---|
| 17 | D KILLVAR
|
---|
| 18 | X1 Q
|
---|
| 19 | ;
|
---|
| 20 | BEGEND ;CALL DIFG3 TO PROCESS BEGIN-END BLOCK
|
---|
| 21 | I "AL"[$P(DIFGMO(DIFGMULT),U) S DIFGSECP=$P(^DD(DIC,.01,0),U,2) S:DIFGSECP["P" DIFGPOIN="" I DIFGSECP'["'"!($D(DIFGENV("LAYGO",DIC,.01))) S DIFGLAGO=1
|
---|
| 22 | D ^DIFG3
|
---|
| 23 | Q
|
---|
| 24 | ;
|
---|
| 25 | SET ;
|
---|
| 26 | I '$D(DIFGSKIP(DIFGMULT)),$D(^UTILITY("DIFG",$J,DIFGINCR,DIC)),'$D(^(DIC,"DA")) S ^UTILITY("DIFG",$J,DIFGINCR,DIC,"DA")=+Y,^("DR")=""
|
---|
| 27 | I $D(DIFGSKIP(DIFGMULT)) S ^UTILITY("DIFG",$J,DIFGINCR,DIC,"DA")=DIFGALNK S:'$D(DIFGFLUS) ^("X")=$S($E(X)="`":$E(X,2,245)_"^N",X[("^UTILITY(""DIFG@"","_$J):X_"^N",1:X)
|
---|
| 28 | I $D(DIFGFLUS),$P(DIFGMO(DIFGMULT),U)="L" S $P(^UTILITY("DIFG",$J,DIFGINCR,DIC,"MODE"),U)="M"
|
---|
| 29 | S ^UTILITY("DIFG",$J,DIFGINCR,DIC,"GL")=^DIC(DIC,0,"GL"),(DA,DIFGDA(0))=DIFGALNK I $D(^("DIC(""DR"")")) S ^("MODE")="A"_"^"_$P(^("MODE"),U,2)
|
---|
| 30 | X2 K DIFGFLUS Q
|
---|
| 31 | ;
|
---|
| 32 | KILLVAR0 ;KILL VARIABLES AFTER LOOKUP FOR FILE ON THE WAY TO FIELDS
|
---|
| 33 | K DIFGALNK,DIFGO(DIFGMULT),DIFGFLD,DIFGPC,DIFGVAL,DIFGDOL,DIFGNUMF,DIFGNOLK,DIFGLAGO,Y,DIFG("NOLKUP")
|
---|
| 34 | Q
|
---|
| 35 | ;
|
---|
| 36 | KILLVAR ;KILL VARIABLES AFTER EACH CONTEXT SWITCH
|
---|
| 37 | K DIFGDA,DIFGDIC,DIFGDOL,DIFGFIND,DIFGFIRP,DIFGFLDN,DIFGHAT,DIFGMLND,DIFGNODE,DIFGNUM,DIFGNUMF,DIFGPC,DIFGPTER,DIFGSECP,DIFGSTRT,DIFGVAL,DIFGNDC,DIFGM,DIFGFLD,DIFGNOLK($P(DIFGMO(DIFGMULT),U,2)),DIFGDIC,DIFGSAVE,DIFGSVVL
|
---|
| 38 | K DIFGSKIP
|
---|
| 39 | Q
|
---|
| 40 | ;
|
---|