PSOERXUT ;ALB/MR - eRx CS utilities ;7/21/2020 9:57am
Source file <PSOERXUT.m>
Package | Total | Call Graph |
---|---|---|
Kernel | 4 | ($$FMTE,$$NOW)^XLFDT $$UP^XLFSTR ($$DEA,$$DEAXDT,$$DETOX,$$SDEA)^XUSER $$NPI^XUSNPI |
VA FileMan | 4 | ^DIC UPDATE^DIE $$GET1^DIQ ^DIR |
Outpatient Pharmacy | 2 | $$CHKERX^PSOERXU1 ($$DEAFOUND,$$ERXSIG,$$RENEWALS,$$VADEA,$$VISTASIG,SUFCHK)^PSOERXU8 |
List Manager | 1 | PAUSE^VALM1 |
Pharmacy Data Management | 1 | $$DETOX^PSSOPKI |
Registration | 1 | ADD^VADPT |
Name | Comments | DBIA/ICR reference |
---|---|---|
CSFILTER(ERXIEN) | ; Check eRx against CS Filter Prompt Answers
; Global variables: PSOCSERX: CS Filter Selection | PSOCSSCH: Drug Schedule Filter Selection ; Input: (r)ERXIEN - Pointer to ERX HOLDING QUEUE (#52.49) |
|
VALPTADD(DFN) | ; Returns whether the patient has a valid address or not
; Input: (r)DFN - Pointer to the PATIENT file (#2) |
|
CSKEYS(USER) | ; Checks whether the user has a valid Security Key for CS Orders
; Input: (r)USER - Pointer to the NEW PERSON file (#200) |
|
PRDRVAL(RESULT,ACTION,ERXIEN,PROVIEN,DRUGIEN) | ; API used to Verify Provider and Drug Selection/Validation for CS Prescriptions
; Input:(r)ACTION - Ation being peformed ("EP": Edit Provider | "VP": Validate Provider | "ED": Edit Drug | "VD": Validate Drug | "AC": Accept eRx) ; (r)ERXIEN - eRx IEN. Pointer to the ERX HOLDING QUEUE file (#52.49) ; (o)PROVIEN - Provider IEN. Pointer to the NEW PERSON file (#200) ; (o)DRUGIEN - Dispense Drug IEN. Pointer to the DRUG file (#50) |
|
ERXDRSCH(ERXIEN) | ; Returns the CS Schedule for the eRx Drug (Internal^External Format)
; Input: (r) ERXIEN - Pointer to the ERX HOLDING QUEUE file (52.49) |
|
VADRSCH(DRUGIEN) | ; Returns the CS Schedule for the VistA Dispense Drug (Internal^External Format)
; Input: (r) DRUGIEN - Pointer to the DRUG file (#50) |
|
PAUSE | ; Pauses screen until user hits Return
|
|
ERXIEN(PORXIEN) | ; Given the Pending Order (#52.41) or Prescription (#52) IEN, returns the eRx (#52.49) IEN or "" (null)
; Input: (r) PORXIEN - Pointer to either the PENDING ORDERS file (#52.41) (e.g., "139839P") or PRESCRIPTION file (#52) (e.g., 12930984) |
|
AUDLOG(ERXIEN,FIELD,EDITBY,NEWVAL) | ; Sets eRx Edit Audit Log
; Input: (r) ERXIEN - Pointer to ERX HOLDING QUEUE File (#52.49). eRx record being edited. ; (r) FIELD - Freetext eRx Field Name (e.g.,"DRUG", "PROVIDER", "PATIENT", Etc...). Field being edited. ; (r) EDITBY - Pointer to NEW PERSON File (#200). User who made the edit. ; (r) NEWVAL - Array containing the new value for the field being edited (Passed in by Reference) |
|
EQUAL(ERXIEN,FIELD,NEWVAL) | ; Compare if the OLD and NEW values are the same
|
|
OLDVAL(ERXIEN,FIELD,STRTFROM,OLDVAL) | ; Retrieves the Previous/Old Value for the eRx Field
; Input: (r) ERXIEN - Pointer to ERX HOLDING QUEUE File (#52.49). eRx record being edited. ; (r) FIELD - Freetext eRx Field Name (e.g.,"DRUG", "PROVIDER", "PATIENT", Etc...). Field being edited. ; (o) STRTFROM - Start From Audit Log IEN. Default: Lastest value for the field. |
|
PROXYDUZ() | ; Returns the Proxy DUZ for Audit Log entries from Auto-Matching
; Output: PROXYDUZ - Pointer to NEW PERSON file (#200) |
|
DONOTFIL(ERXIEN) | ; Do Not Fill record
; Input: (r) ERXIEN - Pointer to ERX HOLDING QUEUE File (#52.49). eRx record being edited. |
|
SUFFWARN(RESULT,ERXPRDEA,VADEADSP,HEADER) | ; Append suffix warning to end of RESULT array
; Input: (r) ERXPRDEA - eRx DEA number ; (r) VADEADSP - VA DEA # ; (o) HEADER - Print Message Heading ; Output: RESULT - DEA Number suffix mismatch warning text |
|
DEFROUTE(OIIEN) | ; Returns the Default Route for Orderable Item
; Input: OIIEN - Orderable Item IEN - Pointer to PHARMACY ORDERABLE ITEM file (#50.7) |
|
ERXSIG(ERXIEN) | ; Returns the eRx SIG
|
|
VISTASIG(ERXIEN) | ; Returns the VistA SIG, if present
|
|
RENEWALS(ERXIEN) | ; Returns whether Renewals are Prohibited or no
|
Name | Field # of Occurrence |
---|---|
^DIC | PROXYDUZ+3 |
UPDATE^DIE | AUDLOG+21 |
$$GET1^DIQ | PRDRVAL+9, PRDRVAL+10, PRDRVAL+13, PRDRVAL+14, PRDRVAL+15, PRDRVAL+16, PRDRVAL+18, PRDRVAL+55, PRDRVAL+106, PRDRVAL+110 , PRDRVAL+125, ERXDRSCH+6, VADRSCH+6, VADRSCH+7, ERXIEN+6, ERXIEN+7, OLDVAL+9, DONOTFIL+4, DEFROUTE+5, DEFROUTE+8 , DEFROUTE+9, DEFROUTE+10, DEFROUTE+13, DEFROUTE+16, DEFROUTE+18 |
^DIR | PAUSE+1 |
$$CHKERX^PSOERXU1 | ERXIEN+9 |
$$DEAFOUND^PSOERXU8 | PRDRVAL+47, PRDRVAL+97 |
$$ERXSIG^PSOERXU8 | ERXSIG+1 |
$$RENEWALS^PSOERXU8 | RENEWALS+1 |
$$VADEA^PSOERXU8 | PRDRVAL+30, PRDRVAL+48, PRDRVAL+98, PRDRVAL+100 |
$$VISTASIG^PSOERXU8 | VISTASIG+1 |
SUFCHK^PSOERXU8 | PRDRVAL+107, PRDRVAL+111, PRDRVAL+115, PRDRVAL+119, PRDRVAL+120 |
$$DETOX^PSSOPKI | PRDRVAL+123 |
ADD^VADPT | VALPTADD+5 |
PAUSE^VALM1 | DONOTFIL+6 |
$$FMTE^XLFDT | PRDRVAL+40, PRDRVAL+114 |
$$NOW^XLFDT | AUDLOG+17 |
$$UP^XLFSTR | PRDRVAL+15, PRDRVAL+30, PRDRVAL+48, PRDRVAL+98, PRDRVAL+100 |
$$DEA^XUSER | PRDRVAL+50, PRDRVAL+101 |
$$DEAXDT^XUSER | PRDRVAL+31 |
$$DETOX^XUSER | PRDRVAL+123 |
$$SDEA^XUSER | PRDRVAL+48, PRDRVAL+98 |
$$NPI^XUSNPI | PRDRVAL+24 |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
FileNo | Call Tags |
---|---|
^VA(200 - [#200] | Classic Fileman Calls, GET1^DIQ |
^PSDRUG - [#50] | GET1^DIQ |
50.6061 | GET1^DIQ |
^PSNDF(50.68 - [#50.68] | GET1^DIQ |
^PS(50.7 - [#50.7] | GET1^DIQ |
50.711 | GET1^DIQ |
^PSRX - [#52] | GET1^DIQ |
^PS(52.41 - [#52.41] | GET1^DIQ |
^PS(52.48 - [#52.48] | GET1^DIQ |
^PS(52.49 - [#52.49] | GET1^DIQ |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^PS(50.606 - [#50.606] | DEFROUTE+11, DEFROUTE+12 |
^PS(50.7 - [#50.7] | DEFROUTE+3, DEFROUTE+6, DEFROUTE+7 |
^PS(52.49 - [#52.49] | CSFILTER+7, CSFILTER+8, AUDLOG+8, OLDVAL+8, OLDVAL+10, OLDVAL+11 |
^VA(200 - [#200] | AUDLOG+10 |
^XUSEC("PSDRPH" | CSKEYS+4 |
^XUSEC("PSO ERX ADV TECH" | CSKEYS+4 |
^XUSEC("PSO ERX TECH" | CSKEYS+4 |
Name | Line Occurrences |
---|---|
$$EQUAL | AUDLOG+14 |
$$ERXDRSCH | PRDRVAL+17 |
$$VADRSCH | PRDRVAL+43, PRDRVAL+46, PRDRVAL+76 |
OLDVAL | EQUAL+8 |
SUFFWARN | PRDRVAL+59, PRDRVAL+60, PRDRVAL+61, PRDRVAL+62 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
ACTION | PRDRVAL~, PRDRVAL+22, PRDRVAL+25, PRDRVAL+60, PRDRVAL+61, PRDRVAL+62, PRDRVAL+65, PRDRVAL+68, PRDRVAL+71, PRDRVAL+75 , PRDRVAL+77, PRDRVAL+109, PRDRVAL+113, PRDRVAL+124 |
AUDLOG | AUDLOG+6~, OLDVAL+6~, OLDVAL+7*, OLDVAL+8*, OLDVAL+9, OLDVAL+10, OLDVAL+11 |
AUDLOG( | AUDLOG+17*, AUDLOG+18*, AUDLOG+19*, AUDLOG+20* |
DEAFOUND | PRDRVAL+44~*, PRDRVAL+47*, PRDRVAL+48, PRDRVAL+49, PRDRVAL+96~*, PRDRVAL+97*, PRDRVAL+98, PRDRVAL+99 |
DEFROUTE | DEFROUTE+4~*, DEFROUTE+8*, DEFROUTE+13*, DEFROUTE+16, DEFROUTE+18, DEFROUTE+20 |
DFIEN | DEFROUTE+4~, DEFROUTE+10*, DEFROUTE+11, DEFROUTE+12, DEFROUTE+13 |
DFN | VALPTADD~, VALPTADD+4 |
DIC | PROXYDUZ+2~, PROXYDUZ+3* |
DIC(0 | PROXYDUZ+3* |
DIR | PAUSE+1! |
DIR("A" | PAUSE+1* |
DIR(0 | PAUSE+1* |
DRGCSCH | CSFILTER+5~, CSFILTER+7*, CSFILTER+11, CSFILTER+12, CSFILTER+13, CSFILTER+14 |
DRUGIEN | PRDRVAL~, PRDRVAL+8*, PRDRVAL+10*, PRDRVAL+11, PRDRVAL+42, PRDRVAL+43, PRDRVAL+46, PRDRVAL+76, PRDRVAL+123, VADRSCH~ , VADRSCH+5, VADRSCH+6, VADRSCH+7 |
DSERXFLG | PRDRVAL+7~, PRDRVAL+16*, PRDRVAL+28, PRDRVAL+77, PRDRVAL+83 |
EDITBY | AUDLOG~, AUDLOG+7*, AUDLOG+10, AUDLOG+19 |
EQUAL | EQUAL+6~*, EQUAL+9*, EQUAL+10*, EQUAL+11 |
ERXCSFLG | CSFILTER+5~, CSFILTER+8*, CSFILTER+9, CSFILTER+10, CSFILTER+13, CSFILTER+14 |
ERXDRSCH | PRDRVAL+7~, PRDRVAL+17*, PRDRVAL+79, PRDRVAL+82, ERXDRSCH+4~, ERXDRSCH+6*, ERXDRSCH+7 |
ERXIEN | CSFILTER~, CSFILTER+7, CSFILTER+8, PRDRVAL~, PRDRVAL+8*, PRDRVAL+9, PRDRVAL+10, PRDRVAL+11, PRDRVAL+13, PRDRVAL+16 , PRDRVAL+17, PRDRVAL+18, PRDRVAL+30, PRDRVAL+48, PRDRVAL+98, PRDRVAL+100, ERXDRSCH~, ERXDRSCH+5, ERXDRSCH+6, AUDLOG~ , AUDLOG+7*, AUDLOG+8, AUDLOG+14, AUDLOG+17, AUDLOG+18, AUDLOG+19, AUDLOG+20, EQUAL~, EQUAL+8, OLDVAL~ , OLDVAL+8, OLDVAL+9, OLDVAL+10, OLDVAL+11, DONOTFIL~, DONOTFIL+4, ERXSIG~, ERXSIG+1, VISTASIG~, VISTASIG+1 , RENEWALS~, RENEWALS+1 |
ERXPRDEA | PRDRVAL+7~, PRDRVAL+15*, PRDRVAL+34, PRDRVAL+36, PRDRVAL+37, PRDRVAL+38, PRDRVAL+39, PRDRVAL+47, PRDRVAL+48, PRDRVAL+59 , PRDRVAL+60, PRDRVAL+61, PRDRVAL+62, PRDRVAL+89, PRDRVAL+97, PRDRVAL+98, PRDRVAL+107, PRDRVAL+111, PRDRVAL+115, PRDRVAL+116 , PRDRVAL+118, PRDRVAL+119, PRDRVAL+120, SUFFWARN~, SUFFWARN+8 |
ERXPRNPI | PRDRVAL+7~, PRDRVAL+14*, PRDRVAL+25, PRDRVAL+26 |
ERXPROV | PRDRVAL+7~, PRDRVAL+13*, PRDRVAL+14, PRDRVAL+15 |
ERXSUFF | PRDRVAL+23~*, PRDRVAL+37*, PRDRVAL+58, PRDRVAL+107, PRDRVAL+111, PRDRVAL+115, PRDRVAL+119, PRDRVAL+120 |
FIELD | AUDLOG~, AUDLOG+9, AUDLOG+14, AUDLOG+18, EQUAL~, EQUAL+8, OLDVAL~, OLDVAL+9 |
HEADER | SUFFWARN~, SUFFWARN+6 |
I | VALPTADD+4~, EQUAL+6~, EQUAL+9*, EQUAL+10*, OLDVAL+10*, OLDVAL+11 |
NEWVAL | AUDLOG~, AUDLOG+11, AUDLOG+14, EQUAL~ |
NEWVAL( | EQUAL+9, EQUAL+10 |
OIIEN | DEFROUTE~, DEFROUTE+3, DEFROUTE+5, DEFROUTE+6, DEFROUTE+7, DEFROUTE+8, DEFROUTE+9, DEFROUTE+10, DEFROUTE+16, DEFROUTE+18 |
OLDVAL | EQUAL+6~, EQUAL+8, OLDVAL~, OLDVAL+6! |
OLDVAL( | EQUAL+9, EQUAL+10, OLDVAL+11* |
OLDVAL(0 | OLDVAL+8 |
OR100IEN | ERXIEN+4~, ERXIEN+6*, ERXIEN+7*, ERXIEN+8, ERXIEN+9 |
PORXIEN | ERXIEN~, ERXIEN+5, ERXIEN+6, ERXIEN+7 |
PROVIEN | PRDRVAL~, PRDRVAL+8*, PRDRVAL+9*, PRDRVAL+11, PRDRVAL+24, PRDRVAL+30, PRDRVAL+47, PRDRVAL+48, PRDRVAL+50, PRDRVAL+55 , PRDRVAL+93, PRDRVAL+97, PRDRVAL+98, PRDRVAL+100, PRDRVAL+101, PRDRVAL+106, PRDRVAL+110, PRDRVAL+123, PRDRVAL+125 |
>> PSOCSERX | CSFILTER+6, CSFILTER+9, CSFILTER+10, CSFILTER+11, CSFILTER+12, CSFILTER+13, CSFILTER+14 |
>> PSOCSSCH | CSFILTER+6, CSFILTER+11, CSFILTER+12, CSFILTER+13, CSFILTER+14 |
RESCNT | SUFFWARN+5~*, SUFFWARN+6 |
RESULT | PRDRVAL~, PRDRVAL+8!*, PRDRVAL+11*, PRDRVAL+59*, PRDRVAL+60*, PRDRVAL+61*, PRDRVAL+62*, PRDRVAL+63*, PRDRVAL+66*, PRDRVAL+69* , PRDRVAL+72*, PRDRVAL+78*, PRDRVAL+84*, PRDRVAL+90*, PRDRVAL+105*, PRDRVAL+107, PRDRVAL+109*, PRDRVAL+111, PRDRVAL+113*, PRDRVAL+115 , PRDRVAL+117*, PRDRVAL+119, PRDRVAL+120, PRDRVAL+124*, SUFFWARN~ |
RESULT( | PRDRVAL+26*, PRDRVAL+33*, PRDRVAL+35*, PRDRVAL+38*, PRDRVAL+40*, PRDRVAL+55*, PRDRVAL+80*, PRDRVAL+82*, PRDRVAL+86*, PRDRVAL+88* , PRDRVAL+91*, PRDRVAL+106*, PRDRVAL+110*, PRDRVAL+114*, PRDRVAL+118*, PRDRVAL+125*, SUFFWARN+7*, SUFFWARN+8* |
RESULT("" | PRDRVAL+26, PRDRVAL+33, PRDRVAL+35, PRDRVAL+38, PRDRVAL+40, PRDRVAL+55, PRDRVAL+80, PRDRVAL+82, PRDRVAL+86, PRDRVAL+88 , PRDRVAL+91, PRDRVAL+106, PRDRVAL+110, PRDRVAL+114, PRDRVAL+118, PRDRVAL+125, SUFFWARN+5, SUFFWARN+7, SUFFWARN+8 |
RESULT(0 | PRDRVAL+59, PRDRVAL+63 |
RESULT(1 | PRDRVAL+11* |
RTIEN | DEFROUTE+4~, DEFROUTE+6*, DEFROUTE+7, DEFROUTE+8, DEFROUTE+11*, DEFROUTE+12, DEFROUTE+13 |
RXWRDATE | PRDRVAL+7~, PRDRVAL+18*, PRDRVAL+39, PRDRVAL+48, PRDRVAL+98, PRDRVAL+123 |
SAVERES | AUDLOG+6~ |
STRTFROM | OLDVAL~, OLDVAL+7 |
USER | CSKEYS~, CSKEYS+4 |
VACSDRUG | PRDRVAL+7~, PRDRVAL+19*, PRDRVAL+45*, PRDRVAL+60, PRDRVAL+65, PRDRVAL+76*, PRDRVAL+77, PRDRVAL+83, PRDRVAL+89, PRDRVAL+95 |
VADEADFL | PRDRVAL+7~, PRDRVAL+30*, PRDRVAL+50*, PRDRVAL+51, PRDRVAL+52, PRDRVAL+98*, PRDRVAL+100*, PRDRVAL+101*, PRDRVAL+102, PRDRVAL+103 , PRDRVAL+107, PRDRVAL+111, PRDRVAL+115, PRDRVAL+119, PRDRVAL+120 |
VADEADSP | PRDRVAL+7~, PRDRVAL+30*, PRDRVAL+38, PRDRVAL+48*, PRDRVAL+51*, PRDRVAL+52*, PRDRVAL+59, PRDRVAL+60, PRDRVAL+61, PRDRVAL+62 , PRDRVAL+98*, PRDRVAL+102*, PRDRVAL+103*, SUFFWARN~, SUFFWARN+8 |
VADEAEXP | PRDRVAL+7~, PRDRVAL+31*, PRDRVAL+39, PRDRVAL+40 |
VADEANUM | PRDRVAL+7~, PRDRVAL+30*, PRDRVAL+31, PRDRVAL+32, PRDRVAL+36, PRDRVAL+37, PRDRVAL+39, PRDRVAL+48*, PRDRVAL+51*, PRDRVAL+52* , PRDRVAL+54, PRDRVAL+59, PRDRVAL+60, PRDRVAL+61, PRDRVAL+62, PRDRVAL+98*, PRDRVAL+102*, PRDRVAL+103*, PRDRVAL+104, PRDRVAL+108 , PRDRVAL+112, PRDRVAL+114, PRDRVAL+116, PRDRVAL+118 |
VADEASTR | PRDRVAL+7~ |
VADEASUF | PRDRVAL+7~ |
VADRSCH | PRDRVAL+7~, PRDRVAL+46*, PRDRVAL+48, PRDRVAL+55, PRDRVAL+76*, PRDRVAL+85, PRDRVAL+86, PRDRVAL+88, PRDRVAL+98, PRDRVAL+110 , VADRSCH+4~, VADRSCH+7*, VADRSCH+8, VADRSCH+9 |
VAPA | VALPTADD+4~ |
VAPA(11 | VALPTADD+5 |
VAPA(24 | VALPTADD+5 |
VAPA(25 | VALPTADD+5 |
VAPRDIEN | VADRSCH+4~, VADRSCH+6*, VADRSCH+7, VADRSCH+9 |
VAPRNPI | PRDRVAL+7~, PRDRVAL+24*, PRDRVAL+25, PRDRVAL+26 |
X | OLDVAL+6~, PROXYDUZ+2~, PROXYDUZ+3* |
Y | PROXYDUZ+2~, PROXYDUZ+4 |