Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: PSOSPMV

Package: Outpatient Pharmacy

Routine: PSOSPMV


Information

PSOSPMV ;BIRM/MFR - Multiple Individual Prescription ASAP Data Listman Driver ;09/29/2020

Source Information

Source file <PSOSPMV.m>

Call Graph

Call Graph

Call Graph Total: 16

Package Total Call Graph
Outpatient Pharmacy 7 $$NUMERIC^PSOASAP0  $$RXNUM^PSOBPSU2  ($$RXRLDT,$$RXSITE,$$RXSTATE,$$RXSTATEP)^PSOBPSUT  $$GETNDC^PSONDCUT  ($$GETNDC,PAUSE)^PSOSPMU1  $$RXFILL^PSOSPMU2  ($$PREIEN,$$RPHIEN,$$SCREEN,$$SPOK,SETNAME)^PSOSPMUT  
VA FileMan 4 (IX,LIST)^DIC  FILE^DICN  $$GET1^DIQ  ^DIR  
Kernel 2 ($$FMADD,$$NOW)^XLFDT  $$UP^XLFSTR  
List Manager 2 EN^VALM  FULL^VALM1  
Registration 1 (ADD,DEM)^VADPT  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 3

Package Total Caller Graph
Outpatient Pharmacy 2 PSO SPMP VOID RX VIEW/EXPORT  PSOSPMU1  
Kernel 1 ^DIC(19  

Entry Points

Name Comments DBIA/ICR reference
MULTI ; Entry Point
EN(STATE,PSOFROM,PSOTO) ; Entry point
RXLOOP(PSODONE) ; - Prompt for Rx, Fill, Record Type
ONEFILL(RXIEN,FILLNUM) ; Get All Fills for on RX#
RECTYP(RXIEN,FILLNUM,RECTYPE) ; Get Record Type
GETDATA(RXIEN,FILLNUM,RECTYPE,PSORXOK) ; Entry point
BLDBAT(EXPTYPE,PSOBATLST) ; Given a list of Rx's builds a new Export Batch
; Input: (r) EXPTYPE - Export Type ((MA)naul/(SC)heduled/(RX) Single Rx)/(VD) Void Only
; (r) List of Rx's: ^TMP("PSOSPMRX",$J,STATE,RXIEN,RXFILL)=Record Type ((N)ew/(R)evise/(V)oid)
; Note: This ^TMP global will be cleaned up at the end
RXLKP(RXNUM) ; - Peforms Lookup on the PRESCRIPTION file
VDRXBAT(BATIEN) ; Check for VOIDs in RX batch
VOIDST(RXIEN,FILL) ; Determine the state to send the void
; Make sure the void is sent to the state that received the most recent fill

External References

Name Field # of Occurrence
IX^DIC RXLKP+3
LIST^DIC VDRXBAT+4
FILE^DICN BLDBAT+17, BLDBAT+33
$$GET1^DIQ RXLOOP+19, RXLOOP+20, RXLOOP+25, RXLOOP+26, RXLOOP+28, RECTYP+1, GETDATA+4, GETDATA+6, GETDATA+8, BLDBAT+13
, BLDBAT+21, BLDBAT+29, BLDBAT+30, VDRXBAT+3, VOIDST+7
^DIR RXLOOP+3, RECTYP+17
$$NUMERIC^PSOASAP0 BLDBAT+29
$$RXNUM^PSOBPSU2 RXLOOP+9
$$RXRLDT^PSOBPSUT ONEFILL+4, RECTYP+7
$$RXSITE^PSOBPSUT RXLOOP+28, GETDATA+5
$$RXSTATE^PSOBPSUT RXLOOP+17
$$RXSTATEP^PSOBPSUT RXLOOP+18
$$GETNDC^PSONDCUT BLDBAT+31
$$GETNDC^PSOSPMU1 BLDBAT+27
PAUSE^PSOSPMU1 RXLOOP+14
$$RXFILL^PSOSPMU2 ONEFILL+1
$$PREIEN^PSOSPMUT GETDATA+11
$$RPHIEN^PSOSPMUT GETDATA+12
$$SCREEN^PSOSPMUT RXLOOP+12
$$SPOK^PSOSPMUT RXLOOP+30, BLDBAT+10
SETNAME^PSOSPMUT GETDATA+7
ADD^VADPT RXLOOP+19, GETDATA+7
DEM^VADPT GETDATA+7
EN^VALM EN+2
FULL^VALM1 EN+3
$$FMADD^XLFDT MULTI+3, MULTI+7
$$NOW^XLFDT MULTI+3, MULTI+7, BLDBAT+14
$$UP^XLFSTR RXLOOP+4

Interaction Calls

Name Line Occurrences
Function Call: WRITE
  • Prompt: !?5,"The ECME# must be 7 digits long!",$C(7)
  • Line Location: RXLOOP+8
Function Call: WRITE
  • Prompt: " ??"
  • Line Location: RXLOOP+9
Function Call: WRITE
  • Prompt: !
  • Line Location: RXLOOP+11
Function Call: WRITE
  • Prompt: !!?1,$S($P(SCREEN,"^",3)="E":"ERROR",1:"WARNING"),": ",$P(SCREEN,"^",2),$C(7)
  • Line Location: RXLOOP+14
Function Call: WRITE
  • Prompt: !?5,RXERMSG
  • Line Location: RXLOOP+29
Function Call: WRITE
  • Prompt: !?5,$P(RXERMSG,"^",2)
  • Line Location: RXLOOP+31
Function Call: WRITE
  • Prompt: !!?1,"Only prescription fills dispensed on or after Feb 11, 2013 can be exported.",$C(7)
  • Line Location: ONEFILL+5
Function Call: WRITE
  • Prompt: !
  • Line Location: RECTYP+17
Function Call: WRITE
  • Prompt: !!,"Creating Batch #",DINUM," for ",$$GET1^DIQ(58.41,STATE,.01),"..."
  • Line Location: BLDBAT+13
Function Call: WRITE
  • Prompt: "Done."
  • Line Location: BLDBAT+34
Routine Call
  • DIC
  • Line Location:
    • RXLKP+3
Routine Call
  • DIC
  • Line Location:
    • VDRXBAT+4
Routine Call
  • DIR
  • Line Location:
    • RXLOOP+3
    • RECTYP+17
Routine Call
  • VALM
  • Line Location:
    • EN+2

FileMan Files Accessed Via FileMan Db Call

FileNo Call Tags
^PSDRUG - [#50] GET1^DIQ
^PSRX - [#52] Classic Fileman Calls,  GET1^DIQ
^PS(58.41 - [#58.41] GET1^DIQ
^PS(58.42 - [#58.42] Classic Fileman Calls,  GET1^DIQ
58.42001 LIST^DIC
^PS(59 - [#59] GET1^DIQ

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^DD("DILOCKTM" BLDBAT+11
^PS(58.42 - [#58.42] BLDBAT+11, BLDBAT+12, BLDBAT+18, VOIDST+4, VOIDST+5, VOIDST+6
^TMP("PSOSPMRX" GETDATA+13*, BLDBAT+6, BLDBAT+9, BLDBAT+20, BLDBAT+22, BLDBAT+25, BLDBAT+35!

Label References

Name Line Occurrences
$$BLDBAT RXLOOP+34
$$RXLKP RXLOOP+5
$$VOIDST RXLOOP+22
EN MULTI+9
GETDATA RXLOOP+33
ONEFILL RXLOOP+11
RECTYP RXLOOP+15
RXLOOP MULTI+4

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
% BLDBAT+5~
ASAP GETDATA+1~
BAT VOIDST+2~, VOIDST+4*, VOIDST+5, VOIDST+6, VOIDST+7
BATCHIEN BLDBAT+5~, BLDBAT+9, BLDBAT+10*, BLDBAT+12*, BLDBAT+19*, BLDBAT+23, BLDBAT+24, BLDBAT+36
BATIEN MULTI+1~, RXLOOP+34*, VDRXBAT~, VDRXBAT+3, VDRXBAT+4
>> BEGRLDT BLDBAT+15, BLDBAT+16
D RXLKP+1~, RXLKP+2*
DA BLDBAT+5~, BLDBAT+24!
DA(1 BLDBAT+24*
DD BLDBAT+5~, BLDBAT+17!, BLDBAT+33!
DFN MULTI+1~, RXLOOP+1~, RXLOOP+19*, GETDATA+6*, GETDATA+7
DIC BLDBAT+5~, BLDBAT+14*, BLDBAT+24!*, RXLKP+1~, RXLKP+2*
DIC("DR" BLDBAT+14*, BLDBAT+16*, BLDBAT+32*
DIC(0 BLDBAT+14*, BLDBAT+24*, RXLKP+2*
DINUM BLDBAT+5~, BLDBAT+12*, BLDBAT+13, BLDBAT+14, BLDBAT+24!
DIR MULTI+1~, RXLOOP+2!, RXLOOP+11!, RECTYP+3!
DIR("?" RXLOOP+2*
DIR("??" RXLOOP+2*, RECTYP+6*
DIR("A" RXLOOP+2*, RECTYP+3*
DIR("B" RECTYP+12*, RECTYP+16*
DIR("L" RECTYP+4*, RECTYP+5*, RECTYP+9*, RECTYP+10*, RECTYP+11*, RECTYP+15*
DIR(0 RXLOOP+2*, RECTYP+8*, RECTYP+14*
DIRUT MULTI+1~, RXLOOP+3, RXLOOP+11!, RECTYP+17
DLAYGO BLDBAT+5~, BLDBAT+17*, BLDBAT+33*
DO BLDBAT+5~, BLDBAT+17!, BLDBAT+33!
DONE VOIDST+2~, VOIDST+3*, VOIDST+4, VOIDST+5, VOIDST+7*
DR BLDBAT+5~
DRUGIEN GETDATA+1~, GETDATA+8*, BLDBAT+5~, BLDBAT+21*, BLDBAT+29, BLDBAT+30
DTOUT RXLOOP+15!
DUOUT RXLOOP+11!, RXLOOP+15!, RECTYP+17
DUZ BLDBAT+14
>> ENDRLDT BLDBAT+16
EXPTYP VDRXBAT+1~, VDRXBAT+3*
EXPTYPE BLDBAT~, BLDBAT+13, BLDBAT+14, BLDBAT+34
FILL BLDBAT+5~, BLDBAT+8*, BLDBAT+22*, BLDBAT+25, BLDBAT+27, BLDBAT+31, BLDBAT+32, VOIDST~, VOIDST+4, VOIDST+5
FILLIEN GETDATA+1~, GETDATA+9*
FILLNUM RXLOOP+1~, RXLOOP+11, RXLOOP+12, RXLOOP+15, RXLOOP+22, RXLOOP+33, ONEFILL~, ONEFILL+1*, ONEFILL+4, ONEFILL+6*
, RECTYP~, RECTYP+7, GETDATA~, GETDATA+3*, GETDATA+9, GETDATA+11, GETDATA+12, GETDATA+13
LST RXLOOP+1~, RXLOOP+23*, RXLOOP+24
MBMST RXLOOP+1~, RXLOOP+20*, RXLOOP+21, RXLOOP+22
NDC BLDBAT+5~, BLDBAT+27*, BLDBAT+30*, BLDBAT+31*, BLDBAT+32
PATIEN GETDATA+1~, GETDATA+6*
PREIEN GETDATA+1~, GETDATA+11*
>> PSOASVER RXLOOP+25*, RECTYP+1*, GETDATA+4*
PSOBATLST MULTI+2~, RXLOOP+34, BLDBAT~
PSOBATLST( MULTI+9, BLDBAT+23*
PSOBATLST(0 MULTI+5
PSODONE MULTI+2~, MULTI+3*, MULTI+4, RXLOOP~, RXLOOP+3*
PSOFROM MULTI+2~, MULTI+3*, MULTI+9, EN~
PSOLSTLN MULTI+1~
PSONAME GETDATA+1~
PSOQUIT MULTI+1~, RXLOOP+4*, RXLOOP+7, RXLOOP+8*, RXLOOP+9*
PSORXOK RXLOOP+33, GETDATA~
PSOTO MULTI+2~, MULTI+7*, MULTI+9, EN~
PSOTPCNT MULTI+1~
PSOTTCNT MULTI+1~
>> PSOTXRTS MULTI+6*, RXLOOP+26*
REC VDRXBAT+1~, VDRXBAT+5*
RECTYP VDRXBAT+1~
RECTYPAR VDRXBAT+1~
RECTYPAR("DILIST" VDRXBAT+5
RECTYPE RXLOOP+1~, RXLOOP+15, RXLOOP+22, RXLOOP+33, RECTYP~, RECTYP+19*, GETDATA~, GETDATA+11, GETDATA+12, GETDATA+13
, BLDBAT+5~, BLDBAT+25*, BLDBAT+26, BLDBAT+32
RPHIEN GETDATA+1~, GETDATA+12*
RSTREC GETDATA+1~
RTSDATA GETDATA+1~
RTSREC GETDATA+1~
RX BLDBAT+5~, BLDBAT+8*, BLDBAT+20*, BLDBAT+21, BLDBAT+22, BLDBAT+25, BLDBAT+27, BLDBAT+31, BLDBAT+32
RXERMSG RXLOOP+1~, RXLOOP+28*, RXLOOP+29, RXLOOP+30*, RXLOOP+31
RXIEN MULTI+1~, RXLOOP+1~, RXLOOP+5*, RXLOOP+9*, RXLOOP+11, RXLOOP+12, RXLOOP+15, RXLOOP+17, RXLOOP+18, RXLOOP+19
, RXLOOP+22, RXLOOP+28, RXLOOP+33, ONEFILL~, ONEFILL+1, ONEFILL+4, RECTYP~, RECTYP+7, GETDATA~, GETDATA+5
, GETDATA+6, GETDATA+8, GETDATA+11, GETDATA+12, GETDATA+13, VOIDST~, VOIDST+4, VOIDST+5
RXNODE VOIDST+2~, VOIDST+5*, VOIDST+6
RXNUM RXLKP~, RXLKP+2
SCREEN MULTI+1~, RXLOOP+1~, RXLOOP+12*, RXLOOP+13, RXLOOP+14
SITEIEN GETDATA+1~, GETDATA+5*
SPOK BLDBAT+5~
STATE EN~, EN+1, RXLOOP+17*, RXLOOP+18, BLDBAT+5~, BLDBAT+8*, BLDBAT+9*, BLDBAT+10, BLDBAT+13, BLDBAT+14
, BLDBAT+20, BLDBAT+22, BLDBAT+23, BLDBAT+25
STATECK VOIDST+2~, VOIDST+7*, VOIDST+8
STATEIEN MULTI+1~, MULTI+3*, MULTI+9*, EN+1~*, RXLOOP+24*, RXLOOP+25, RXLOOP+26, RXLOOP+27, RXLOOP+30, RECTYP+1
, GETDATA+4, GETDATA+13
STATELST RXLOOP+1~, RXLOOP+18*, RXLOOP+21*, RXLOOP+22*, RXLOOP+23, RXLOOP+24
TRXTYPE GETDATA+1~, GETDATA+10*
VALM MULTI+1~
VALMBCK MULTI+1~
VALMCNT MULTI+1~
VALMHDR MULTI+1~
VALMSG MULTI+1~
>> VAPA(5 RXLOOP+19, RXLOOP+20, RXLOOP+21
>> VDRXBAT VDRXBAT+2*, VDRXBAT+3, VDRXBAT+5*, VDRXBAT+6
X MULTI+1~, RXLOOP+3, RXLOOP+4*, RXLOOP+5, RXLOOP+7, RXLOOP+8, RXLOOP+9, BLDBAT+5~, BLDBAT+14*, BLDBAT+32*
, RXLKP+1~, RXLKP+2*
XX BLDBAT+5~, BLDBAT+10*
Y RECTYP+19, BLDBAT+5~, BLDBAT+19, RXLKP+1~, RXLKP+4
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All