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 |  Global Variables Directly Accessed |  Label References |  Local Variables |  Marked Items |  All
Print Page as PDF
Routine: ABSPOSQ4

Package: Pharmacy Point of Sale

Routine: ABSPOSQ4


Information

ABSPOSQ4 ; IHS/FCS/DRS - Process responses ; [ 10/07/2002 10:36 AM ]

Source Information

Source file <ABSPOSQ4.m>

Call Graph

Call Graph Total: 7

Package Total Call Graph
Pharmacy Point of Sale 6 TASK^ABSPOSIZ  (INIT,LOG,RELSLOT)^ABSPOSL  (TASK,TASKAT)^ABSPOSQ1  TASKAT^ABSPOSQ3  RESPONSE^ABSPOSQL  ($$TADDNOW,$$TADDNOWS)^ABSPOSUD  
VA Fileman 1 NOW^%DTC  

Caller Graph

Caller Graph Total: 10

Package Total Caller Graph
Pharmacy Point of Sale 10 ABSPOS2D  ABSPOS57  ABSPOS6B  ABSPOSNC  ABSPOSP2  ABSPOSPE  ABSPOSQL  ABSPOSQS  
ABSPOSUA  ABSPOSUC  

Entry Points

Name Comments DBIA/ICR reference
REJCOUNT(RESP,POS,FMT) ; returns rejection count
RESP1000(RESP,POS,FMT) ;EP - ABSPOSP2,ABSPOSUC
; returns the prescription response status
; Note! Could be DP or DC for duplicates
PAID(IEN59) ;EP - ABSPOSQS ;quick query to see if it's paid
EN ; the task from ABSPOSQ3 starts here
; for a specific DIALOUT
; Q4WAIT might be defined, too
RESP500(RESP,FMT) ;EP - ABSPOS57,ABSPOSP2,ABSPOSUC
; returns the response header status
REJSLEEP(RESP,POS) ;EP - ABSPOSQL
; return TRUE if this claim was rejected because the
; insurer is sleeping
; Reject codes we look for depend on which switch.
; Envoy's:
RESPINFO(RXI,DST) ;EP - ABSPOS6B,ABSPOSNC,ABSPOSUA
; quick way to get all the response info for a given RXI
; IMPORTANT!! D not change spelling, case, wording, or spacing!!!
; Callers such as ABSPOSNC are depending on the exact DST("RSP")
; If a reversal was attempted, it complicates things.
; fills DST array as follows:
; DST("HDR")=Response Status (header)
; DST("RSP")=Response Status (prescription)
; This could be: "Payable" "Rejected" "Captured" "Duplicate"
; or "Accepted reversal" or "Rejected reversal"
; or "null" or "null reversal" (no response or corrupt response
; or maybe someone without insurance, so no request was sent)
; DST("REJ",0)=count of reject codes
; DST("REJ",n)=each reject code
; DST("MSG")=message with the response
; All of these are defined, even if originals were '$D.
; The external forms are returned.
INCSLEEP(INS) ;EP - ABSPOSQL
; Increment sleep time for this insurer, if necessary.
; Return the scheduled retry time
NOW()
LOG(X)
ANYRESPS(DIALOUT) ;EP - ABSPOS2D ;
; are there any responses waiting to be processed?
; Also called from POKE^ABSPOSUD
CLRSLEEP(INS,WHY) ;EP - ABSPOSQL
; clear insurer sleeping condition
; also called from CANCEL^ABSPOSUD
; WHY = 1 - we know for sure they're awake now
LOOP9
RESPMSG(RESP,POS,FMT)
REJCODE(RESP,POS,N,FMT)
LOOP1 ;
LOOP7
LOOP ;
; The task may have been started before the responses were ready yet.
; For example, it may have been started before dialing - figure up
; to a minute before something might be available.

External References

Name Field # of Occurrence
NOW^%DTC NOW
TASK^ABSPOSIZ LOOP9+3
INIT^ABSPOSL EN+6
LOG^ABSPOSL LOG
RELSLOT^ABSPOSL LOOP9+1
TASK^ABSPOSQ1 CLRSLEEP+8, INCSLEEP+15
TASKAT^ABSPOSQ1 INCSLEEP+14
TASKAT^ABSPOSQ3 LOOP1+10
RESPONSE^ABSPOSQL LOOP1+5
$$TADDNOW^ABSPOSUD LOOP1+10
$$TADDNOWS^ABSPOSUD INCSLEEP+12

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^ABSP(9002313.55 - [#9002313.55] ANYRESPS+8
^ABSPC - [#9002313.02] REJSLEEP+29
^ABSPECX("POS" EN+3, LOOP+5, ANYRESPS+3
^ABSPEI - [#9002313.4] CLRSLEEP+5, CLRSLEEP+6*, REJSLEEP+31, INCSLEEP+3, INCSLEEP+13*
^ABSPF(9002313.93 - [#9002313.93] REJCODE+5, REJCODE+6
^ABSPR - [#9002313.03] RESP500+2, RESP1000+3, REJCOUNT+1, REJCODE+2, RESPMSG+4, RESPMSG+5, REJSLEEP+5, REJSLEEP+6, REJSLEEP+7, REJSLEEP+8
, REJSLEEP+10, REJSLEEP+15, REJSLEEP+17, REJSLEEP+27
^ABSPT - [#9002313.59] RESPINFO+17, RESPINFO+19, RESPINFO+20, RESPINFO+22
^ABSPT("AD" LOOP9+3, CLRSLEEP+7
^TMP("ABSPOSQ4" LOOP1+2, LOOP1+6

Label References

Name Line Occurrences
$$ANYRESPS LOOP7, ANYRESPS+8
$$NOW INCSLEEP+4
$$REJCODE RESPINFO+28
$$REJCOUNT RESPINFO+26
$$RESP1000 RESPINFO+25
$$RESP500 RESPINFO+24
$$RESPMSG RESPINFO+29
LOG EN+7, LOOP1+1, LOOP1+7, LOOP1+9, LOOP9
LOOP LOOP7+2
LOOP1 LOOP7+1
LOOP7 LOOP+7
LOOP9 LOOP1+8
RESPINFO PAID+1

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
% NOW~
%H NOW~
%I NOW~
A EN+4~, LOOP+4*
ABSPCID REJSLEEP+25~, REJSLEEP+26*, REJSLEEP+27*, REJSLEEP+28, REJSLEEP+29
ABSPIID REJSLEEP+25~, REJSLEEP+26*, REJSLEEP+29*, REJSLEEP+30, REJSLEEP+31
ABSPSLP REJSLEEP+25~, REJSLEEP+26*, REJSLEEP+31*, REJSLEEP+32
B EN+4~, LOOP+4*, LOOP+5*, LOOP+7, LOOP7+2
BLIMIT EN+4~, EN+5*, LOOP+4, LOOP7+2*
CODE REJCODE+2~*, REJCODE+3*, REJCODE+4, REJCODE+5, REJCODE+6*, REJCODE+7*, REJCODE+8
DIALOUT EN+3, EN+5, LOOP+5, LOOP1+1, LOOP1+2, LOOP1+5, LOOP1+6, LOOP1+7, LOOP7*, LOOP7+1
, LOOP7+2*, ANYRESPS~, ANYRESPS+3
DST RESPINFO~
DST("HDR" RESPINFO+24*, RESPINFO+32
DST("MSG" RESPINFO+29*
DST("REJ" RESPINFO+26*, RESPINFO+27, RESPINFO+28*
DST("RSP" RESPINFO+25*, RESPINFO+31, RESPINFO+32*
FMT RESPINFO+23~*, RESPINFO+24, RESPINFO+25, RESPINFO+26, RESPINFO+28, RESPINFO+29, RESP500~, RESP500+3, RESP1000~, RESP1000+4
, REJCOUNT~, REJCODE~, REJCODE+4, RESPMSG~
GOTLOCK EN+4~, LOOP1+3*, LOOP1+4
I RESPINFO+28~*, REJSLEEP+14~*, REJSLEEP+15, REJSLEEP+16, REJSLEEP+17
IEN59 PAID~, PAID+1
INS CLRSLEEP~, CLRSLEEP+4, CLRSLEEP+5, CLRSLEEP+6, INCSLEEP~
>> INSURER INCSLEEP+3, INCSLEEP+13
MSG RESPMSG+2~, RESPMSG+3*, RESPMSG+4*, RESPMSG+5*, RESPMSG+7
N REJCODE~, REJCODE+2
ODIALOUT EN+4~, EN+5*, LOOP7+2
POS RESPINFO+22~*, RESPINFO+25, RESPINFO+26, RESPINFO+28, RESPINFO+29, RESP1000~, RESP1000+3, REJCOUNT~, REJCOUNT+1, REJCODE~
, REJCODE+2, RESPMSG~, RESPMSG+4, RESPMSG+5, REJSLEEP~, REJSLEEP+5, REJSLEEP+6, REJSLEEP+7, REJSLEEP+8, REJSLEEP+10
, REJSLEEP+15, REJSLEEP+17
>> Q4WAIT EN+3, EN+5
RESP RESPINFO+18~, RESPINFO+19*, RESPINFO+20*, RESPINFO+21, RESPINFO+24, RESPINFO+25, RESPINFO+26, RESPINFO+28, RESPINFO+29, RESP500~
, RESP500+2, RESP1000~, RESP1000+3, REJCOUNT~, REJCOUNT+1, REJCODE~, REJCODE+2, RESPMSG~, RESPMSG+4, RESPMSG+5
, REJSLEEP~, REJSLEEP+5, REJSLEEP+6, REJSLEEP+7, REJSLEEP+8, REJSLEEP+10, REJSLEEP+15, REJSLEEP+17, REJSLEEP+27
RET ANYRESPS+7~*, ANYRESPS+8*, ANYRESPS+9, REJSLEEP+14~*, REJSLEEP+15*, REJSLEEP+16, REJSLEEP+17*, REJSLEEP+24, REJSLEEP+32*, REJSLEEP+36
REVERSAL RESPINFO+17~*, RESPINFO+19, RESPINFO+31
RXI RESPINFO~, RESPINFO+17, RESPINFO+19, RESPINFO+20, RESPINFO+22
SET ANYRESPS+7~*, ANYRESPS+8*
TMP PAID+1~
TMP("RSP" PAID+1, PAID+2
U RESPINFO+19, RESPINFO+20, RESPINFO+22, RESP500+2, RESP1000+3, REJCOUNT+1, REJCODE+2, REJCODE+6, CLRSLEEP+6, REJSLEEP+27
, REJSLEEP+29, REJSLEEP+31, INCSLEEP+4, INCSLEEP+5, INCSLEEP+6, INCSLEEP+7, INCSLEEP+8, INCSLEEP+9, INCSLEEP+10, INCSLEEP+11
, INCSLEEP+12, INCSLEEP+14, INCSLEEP+16
WHY CLRSLEEP~
X LOG~, PAID+2~*, PAID+3, RESP500+2~*, RESP500+3, RESP500+4*, RESP500+5*, RESP500+6, RESP1000+3~*, RESP1000+4
, RESP1000+5*, RESP1000+12*, RESP1000+13, REJCODE+5~*, REJCODE+6, NOW~, CLRSLEEP+5~*, CLRSLEEP+6*, INCSLEEP+3~*, INCSLEEP+4
, INCSLEEP+5*, INCSLEEP+6*, INCSLEEP+7*, INCSLEEP+8*, INCSLEEP+9*, INCSLEEP+10*, INCSLEEP+11*, INCSLEEP+12*, INCSLEEP+13, INCSLEEP+14
, INCSLEEP+16

Marked Items

Name Field # of Occurrence
$T( EN+7, LOOP1+1, LOOP1+7, LOOP1+9, LOOP9
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Local Variables |  Marked Items |  All