| 1 | PSUUD0 ;BIR/TJH,PDW;PBM UNIT DOSE CONTROL POINT;07/08/1998
 | 
|---|
| 2 |  ;;4.0;PHARMACY BENEFITS MANAGEMENT;;MARCH, 2005
 | 
|---|
| 3 | EN ; Entry point for processing
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  D ^PSUUD1 ; Collect all data
 | 
|---|
| 7 |  I '$D(^XTMP("PSU_"_PSUJOB,"PSUFLAG")) D
 | 
|---|
| 8 |  .D ^PSUUD3        ; Mail reports
 | 
|---|
| 9 |  .D EN^PSUUD7      ; Mail AMIS summary reports
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 |  ;pt. demographics summary reports
 | 
|---|
| 12 |  D PULL^PSUCP
 | 
|---|
| 13 |  F I=1:1:$L(PSUOPTS,",") S PSUMOD($P(PSUOPTS,",",I))=""
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 |  I $D(PSUMOD(10)) D UDSSN^PSUDEM4   ;Provider extract
 | 
|---|
| 16 |  ;
 | 
|---|
| 17 |  I '$D(^XTMP("PSU_"_PSUJOB,"PSUFLAG")) D
 | 
|---|
| 18 |  .I '$D(^XTMP("PSU_"_PSUJOB,"PSUMFLAG")) D
 | 
|---|
| 19 |  ..D EN^PSUSUM3     ;UD PD summary
 | 
|---|
| 20 |  ..;
 | 
|---|
| 21 |  ..;IV/UD summary report
 | 
|---|
| 22 |  ..I $D(PSUMOD(2))&$D(PSUMOD(1))&'$D(PSUMOD(4)) D
 | 
|---|
| 23 |  ...D EN^PSUSUM5
 | 
|---|
| 24 |  ;
 | 
|---|
| 25 |  K ^XTMP("PSU_"_PSUJOB,"PSUFLAG1")
 | 
|---|
| 26 |  D CLEAN
 | 
|---|
| 27 |  K UDAM,SPEC,AMIS,DOSE,DOSTOT,DIVTOT,GTOT
 | 
|---|
| 28 |  Q
 | 
|---|
| 29 | PRINT ; Entry point for printing function
 | 
|---|
| 30 |  D ^PSUUD5 ; Print summary reports
 | 
|---|
| 31 |  D CLEAN
 | 
|---|
| 32 |  Q
 | 
|---|
| 33 |  ;
 | 
|---|
| 34 | CLEAN ; clean up local symbol table
 | 
|---|
| 35 |  S XPSUOPTN=PSUOPTN,XPSUJOB=PSUJOB M XPSUMOD=PSUMOD
 | 
|---|
| 36 |  D VARKILL^PSUTL ; kill all PSU namespace variables
 | 
|---|
| 37 |  S PSUOPTN=XPSUOPTN,PSUJOB=XPSUJOB M PSUMOD=XPSUMOD K XPSUOPTN,XPSUJOB,XPSUMOD
 | 
|---|
| 38 |  K DADATE,DADRUG,DAHOW,DAMT,DASH,DFN,DIC,DLM,ENDIT,EXTD
 | 
|---|
| 39 |  K PSDATE,PSDOSE,PSECT,PSPAT,REC1,REC2,SPACES,X1,X2,Y,Z
 | 
|---|
| 40 |  D PULL^PSUCP,OPTS^PSUCP
 | 
|---|
| 41 | CLEANQ Q
 | 
|---|