27 lines
1.3 KiB
Mathematica
27 lines
1.3 KiB
Mathematica
PRPFDEF ;CTB/ALTOONA PATIENT FUNDS DEFERRED CREDIT ;2/25/97 1:44 PM
|
|
V ;;3.0;PATIENT FUNDS;**6**;JUNE 1, 1989
|
|
;CHECKS FOR EXISTENCE OF DEFERRED CREDIT ITEMS
|
|
;DELETES DEFERRED CREDIT ITEMS WITH DATES < DT
|
|
;UPDATES ZEROTH NODE
|
|
EN ;UPDATES THE DEFERRED FILE FOR A SINGLE PATIENT. REQUIRES 'DFN' AS THE
|
|
;INTERNAL REFERENCE NUMBER OF THE PATIENT.
|
|
I '$D(^PRPF(470,DFN,4,0)) Q
|
|
S PRQ1=$P(^PRPF(470,DFN,4,0),U,3),PRQ2=$P(^(0),U,4),Q3=1,PRD2=""
|
|
S PRD1=0 F S PRD1=$O(^PRPF(470,DFN,4,PRD1)) Q:PRD1'>0 I $P(^PRPF(470,DFN,4,PRD1,0),U,2)'>DT K ^PRPF(470,DFN,4,PRD1,0) S PRQ2=PRQ2-1 S:PRQ1=PRD1 PRQ1=PRD2 S PRD2=PRD1
|
|
S PRQ4=$P(^PRPF(470,DFN,4,0),U,2) S ^(0)=U_PRQ4_U_PRQ1_U_PRQ2 D KILL Q
|
|
;
|
|
EN1 ;ADDS NEW ENTRY TO THE DEFERRED CREDIT ITEM FILE
|
|
I '$D(^PRPF(470,DFN,4,0)) S ^(0)="^470.02A"
|
|
S PRQ1=($P(^PRPF(470,DFN,4,0),U,3))+1,PRQ2=($P(^(0),U,4))+1
|
|
S ^PRPF(470,DFN,4,PRQ1,0)=PATRID_U_DEFDATE_U_AMT_U_PATRDA
|
|
S $P(^PRPF(470,DFN,4,0),"^",3,4)=PRQ1_U_PRQ2
|
|
D KILL Q
|
|
EN2 ;UPDATE DEFERRED BALANCES ON ALL PATIENTS
|
|
NEW X,DFN,PR1
|
|
S U="^" D NOW^PRPFQ S DT=X
|
|
S DFN=0 F PR1=1:1 S DFN=$O(^PRPF(470,DFN)) Q:+DFN'=DFN!(DFN="") I $D(^PRPF(470,DFN,4,0)),$P(^(0),U,2)'="A" D EN
|
|
D KILL Q
|
|
;
|
|
KILL ;THIS LINE DELETES ALL LOCAL VARIABLES CALLED BY THIS ROUTINE EXCEPTDFN
|
|
K PRQ1,PRQ2,PRQ3,PRQ4,PRD1,PRD2 Q
|