RCDPEP ;AITC/CJE - FLAG PAYERS AS PHARMACY/TRICARE ; 19-APR-2017
Source file <RCDPEP.m>
action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
Name | Comments | DBIA/ICR reference |
---|---|---|
EN(FILTER,DATEFILT) | ; -- main entry point for RCDPE PAYER FLAGS template
; Input: FILTER - A=All payers, P=Pharmacy payers, T=Tricare payers, C=CHAMPVA payers ; M=Medical (Neither Pharmacy nor Tricare nor CHAMPVA) ; DATEFILT - Additional Filter by Date. Has 3 pieces by '^' ; Piece 1 - 1=Filter by date, 0=Don't ; Piece 2 - START - First DATE ADDED to include(FM format) ; Piece 3 - END - Last DATE ADDED to include (FM format) ; |
|
GETDATE() | ; Ask if the user wants to filter by date. If so prompt for start
|
|
GETFILT() | ; Get filter on payer type
; Input: None ; Return: Filter type. ; A=All payers, P=Pharmacy payers, T=Tricare payers, C=CHAMPVA payers ; M=Medical (Neither Pharmacy nor Tricare nor CHAMPVA) |
|
HDR | ; EP - header code for RCDPE PAYER FLAGS template
; Input: Variables FILTER and DATEFILT are assumed to exist ; Output: ListMan template header in VALMHDR array |
|
INIT | ; EP - init variables and list array for RCDPE PAYER FLAGS template
; Input: Variables FILTER and DATEFILT are assumed to exist ; Output: ^TMP("RCDPEP",$J) - Body lines to display for selected template ; ^TMP($J,"RCDPEPIX") - Index of displayed payers |
|
BLD(SORT,FILTER,DATEFILT) | ; - Build the listman body template
; Input: SORT=Index on 344.6 to use for display order ; FILTER=Filter based on FLAG (see EN subroutine for detail) ; DATEFILT=Filter based on date added. |
|
BLD1PAY(PAYCNT) | ; (Re)build one payor line into the listman array
; Input PAYCNT - The sequence number of the payer being built ; Output - Lines set into template array (^TMP("RCDPEP",$J)). |
|
GETPAY(FILTER,DATEFILT) | ; Retrieve the payors sorted and filtered
; Input: FILTER=Type of filter by Pharmacy or Tricare flag ; DATEFILT=Filter by date added ; Output: ^TMP($J,"RCDPEPIX")=PIEN^NAME^PHARMACY_FLAG^TRICARE_FLAG |
|
GET1PAY(PIEN,CNT) | ; Get the data for one payer and add it to the list
; Input: PIEN - Internal entry number to file 344.6 ; CNT - Incremental counter ; Output: ^TMP($J,"RCDPEPIX",CNT)=A1^A2^A3^A4^A5^A6^A7^A8 ; Where A1=PIEN - The payer internal entry number on file 344.6 ; A2=NAME - The payer name ; A3=PAYER ID (also known as TIN) ; A4=DATE ADDED ; A5=PHARMACY PAYER - A Yes/No/Null field to flag a payer as pharmacy ; A6=TRICARE PAYER - A Yes/No/Null filed to flag a payer as tricare ; A7=EFT PAYER - A Yes/No/Null filed to flag a payer as EFT only ; A8=CHAMPVA PAYER - A Yes/No/Null filed to flag a payer as CHAMPVA ;PRCA*4.5*432 |
|
CHKPAY(PIEN,FILTER,DATEFILT) | ; Apply selected filters to a payer
; Input: PIEN - Internal entry number to file 344.6 ; FILTER - A=All payers, P=Pharmacy payers, T=Tricare payers, C=CHAMPVA payers ; M=Medical (Neither Pharmacy nor Tricare nor CHAMPVA) ; DATEFILT - Additional Filter by Date. Has 3 pieces by '^' ; Piece 1 - 1=Filter by date, 0=Don't ; Piece 2 - START - First DATE ADDED to include(FM format) ; Piece 3 - END - Last DATE ADDED to include (FM format) ; Returns: 1 if record matches filter, otherwise 0. |
|
CHKKEY() | ; Check security key for editing
; Inputs: None ; Returns: 1 - User has security key editing, 0 - User does not have key |
|
EDIT | ; EP - for RCDPE PAYER FLAGS EDIT protocol
; Input: None ; Output: File 344.6 is updated ; Listman array is updated |
|
SELENT(FULL,PROMPT,START,END,PCNT,WLIST,MULT) | ; EP - Protocol Action
; Select Entry(s) to perform an action upon ; Called from protocols : RCDPE PAYER FLAGS EDIT ; RCDPE PAYER FLAG PHARM ; RCDPE PAYER FLAG TRIC ; Input: FULL - 1 - full screen mode, 0 otherwise ; PROMPT - Prompt to be displayed to the user ; START - Starting selection value ; END - Ending selection value ; WLIST - Worklist, the user is selecting from ; Optional, defaults to 'RCDPEPIX' ; MULT - 1 to allow multiple selection, ; 0 or null otherwise ; Optional defaults to 0 ; Output: PCNT - Selected Phone Book Entry line(s) ; Returns: Selected Payer Entry IEN(s) ; Error message if invalid selection |
|
SELENTRY(PROMPT,START,END,MULT) | ; Select a line
; Input: PROMPT - Prompt to be displayed to the user ; START - Start comment # that can be selected ; END - Ending comment # that can be selected ; MULT - 1=Multiple selection allowed, 0=otherwise ; Returns: Selected Comment # or "" if not selected |
|
FLAGP | ; EP - for RCDPE PAYER FLAG PHARM protocol
; Toggle pharmacy flag on selected lines ; Input: None ; Output: None |
|
FLAGT | ; EP - for RCDPE PAYER FLAG TRIC protocol
; Toggle Tricare flag on selected lines ; Input: None ; Output: None |
|
FLAGC | ; EP - for RCDPE PAYER FLAG CVA protocol ; Add CHAMPVA flag PRCA*4.5*432
; Toggle CHAMPVA flag on selected lines ; Input: None ; Output: None |
|
FLAG(TYPE) | ; Flag a list of entries as Pharmacy or Tricare or CHAMPVA
; Input: TYPE - P=Pharmacy, T=Tricare, C=CHAMPVA ; Output: File 344.6 is updated ; ListMan array is updated |
|
FILTER | ; EP - for RCDPE PAYER FLAGS FILTER protocol
; Change the filter from a protocol ; Inputs - None ; Output - Sets variables FILTER and DATEFILT |
|
PARSEL(VALMNOD,BEG,END) | ; -- split out pre-answers from user
; Inputs - VALMNOD= User input from protocol menu including pre-answers ; BEG=Begining of the valid numeric range ; END=End of the valid numeric range ; Returns - Y=Comma separated list of valid numeric entries |
|
PARSED(X) | ; Take a date in external format and check if it is a valid
|
|
ASKYN(PROMPT,DEFAULT) | ; Ask a yes/no question
; Input: PROMPT - Question to be asked ; DEFAULT - Default Answer ; 1 - YES, 0 - NO ; Optional, defaults to 0 ; Returns: 1 - User answered YES, 0 othewise |
|
HELP | ; EP - for template RCDPE PAYER FLAGS help
; Input: None ; Output: Text from a help frame displayed to the screen |
|
EXIT | ; -- exit code
|
Name | Field # of Occurrence |
---|---|
^DIE | EDIT+26 |
FILE^DIE | FLAG+56 |
VAL^DIE | PARSED+4 |
$$GET1^DIQ | CHKPAY+14, CHKPAY+15, CHKPAY+16, CHKPAY+27, EDIT+23, FLAG+52 |
GETS^DIQ | GET1PAY+14 |
^DIR | GETDATE+28, GETDATE+39, GETDATE+52, GETFILT+23, SELENTRY+10, ASKYN+10 |
PAYEN^RCDPESP6 | EN+13 |
PAYEX^RCDPESP6 | EN+15 |
EN^VALM | EN+14 |
$$SETSTR^VALM1 | BLD1PAY+4, BLD1PAY+9, BLD1PAY+11, BLD1PAY+13, BLD1PAY+15, BLD1PAY+17, BLD1PAY+19, BLD1PAY+22 |
FULL^VALM1 | GETDATE+9, EDIT+7, SELENT+20, FILTER+6, EXIT+1 |
PAUSE^VALM1 | CHKKEY+9, EDIT+19, SELENT+28, FLAG+32 |
SET^VALM10 | BLD1PAY+20, BLD1PAY+23 |
$$FMTE^XLFDT | GETDATE+38, GETDATE+46, GETDATE+47, GETDATE+50, HDR+11, HDR+12, GET1PAY+21 |
$$UP^XLFSTR | HDR+7 |
EN^XQH | HELP+6 |
OWNSKEY^XUSRB | CHKKEY+6 |
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Function Call: WRITE |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
Routine Call |
|
FileNo | Call Tags |
---|---|
^RCY(344.6 - [#344.6] | Classic Fileman Calls, GET1^DIQ, GETS^DIQ, VAL^DIE |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^RCY(344.4 - [#344.4] | GET1PAY+27 |
^RCY(344.6 - [#344.6] | GETPAY+9, GETPAY+12, EDIT+16, EDIT+28, FLAG+22, FLAG+44, FLAG+55 |
^TMP("RCDPEP" | INIT+7! |
^TMP($J | INIT+7!, BLD+9, BLD1PAY+5, GET1PAY+30*, SELENT+36 |
Name | Line Occurrences |
---|---|
$$ASKYN | FLAG+39 |
$$CHKKEY | EDIT+9, FLAG+8 |
$$CHKPAY | GETPAY+13 |
$$GETDATE | EN+8, FILTER+7 |
$$GETFILT | EN+10, FILTER+9 |
$$PARSED | GETDATE+16, GETDATE+17 |
$$PARSEL | SELENT+22 |
$$SELENT | EDIT+12, FLAG+12 |
$$SELENTRY | SELENT+29 |
BLD | INIT+8 |
BLD1PAY | BLD+12, EDIT+30, FLAG+58 |
FLAG | FLAGP+4, FLAGT+4, FLAGC+4 |
GET1PAY | GETPAY+14, EDIT+29, FLAG+57 |
GETPAY | BLD+5 |
HDR | FILTER+13 |
INIT | FILTER+13 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
BEG | PARSEL~, PARSEL+12, PARSEL+15 |
CFLAG | CHKPAY+9~, CHKPAY+16*, CHKPAY+19, CHKPAY+20 |
CNT | BLD+4~, BLD+6*, BLD+8, BLD+9*, BLD+10, BLD+12, GETPAY+4~, GETPAY+5*, GETPAY+14*, GET1PAY~ , GET1PAY+30 |
CONTINUE | FLAG+4~, FLAG+39*, FLAG+40 |
CREATED | CHKPAY+9~ |
CTR | SELENT+17~, SELENT+33*, SELENT+34, FLAG+4~, FLAG+17*, FLAG+18, FLAG+19, FLAG+42*, FLAG+43, FLAG+47* , FLAG+49, FLAG+51 |
D1 | CHKPAY+9~, CHKPAY+25*, CHKPAY+29 |
D2 | CHKPAY+9~, CHKPAY+26*, CHKPAY+29 |
DA | EDIT+5~, EDIT+24* |
DATALN | BLD1PAY+3~, BLD1PAY+5*, BLD1PAY+6, BLD1PAY+10, BLD1PAY+12, BLD1PAY+14, BLD1PAY+16, BLD1PAY+18, BLD1PAY+21 |
DATAOUT | GET1PAY+13~, GET1PAY+17*, GET1PAY+18*, GET1PAY+19*, GET1PAY+22*, GET1PAY+24*, GET1PAY+26*, GET1PAY+27*, GET1PAY+29*, GET1PAY+30 |
DATEA | GET1PAY+13~, GET1PAY+20*, GET1PAY+21*, GET1PAY+22 |
DATEFILT | EN~, EN+8*, EN+9, GETDATE+20, HDR+9, HDR+11, HDR+12, INIT+6*, INIT+8, BLD~ , BLD+5, GETPAY~, GETPAY+13, CHKPAY~, CHKPAY+22, CHKPAY+25, CHKPAY+26, FILTER+11*, HELP+3~ |
DC | CHKPAY+9~, CHKPAY+27*, CHKPAY+28*, CHKPAY+29 |
DEFAULT | ASKYN~, ASKYN+7*, ASKYN+9 |
DIC | EDIT+5~ |
DIE | EDIT+5~, EDIT+22* |
DIR | GETDATE+8~, GETDATE+34!, GETDATE+43!, GETFILT+5~, SELENT+27!, SELENTRY+6~, SELENTRY+10!, ASKYN+6~ |
DIR("?" | GETDATE+26*, GETDATE+27*, GETFILT+14*, GETFILT+15*, GETFILT+16*, GETFILT+17*, GETFILT+18*, GETFILT+19*, GETFILT+20* |
DIR("A" | GETDATE+24*, GETDATE+36*, GETDATE+45*, GETDATE+46*, GETDATE+47*, GETFILT+12*, SELENTRY+9*, ASKYN+8* |
DIR("B" | GETDATE+25*, GETDATE+38*, GETDATE+50*, GETDATE+51*, GETFILT+13*, ASKYN+9* |
DIR(0 | GETDATE+23*, GETDATE+35*, GETDATE+44*, GETFILT+11*, SELENTRY+8*, ASKYN+8* |
DIROUT | GETDATE+8~, GETFILT+5~, SELENT+17~, SELENTRY+6~, ASKYN+6~ |
DIRUT | GETDATE+8~, GETDATE+29, GETDATE+40, GETDATE+53, GETFILT+5~, GETFILT+24, SELENT+17~, SELENTRY+6~, ASKYN+6~ |
DLINE | SELENT+17~ |
DO | EDIT+5~ |
DR | EDIT+5~, EDIT+25* |
DT | GETDATE+44, GETDATE+47 |
DTOUT | GETDATE+8~, GETFILT+5~, EDIT+5~, SELENT+17~, SELENTRY+6~, ASKYN+6~ |
DUOUT | GETDATE+8~, GETFILT+5~, SELENT+17~, SELENTRY+6~, ASKYN+6~ |
EDT | EDIT+5~ |
END | SELENT~, SELENT+22, SELENT+29, SELENTRY~, SELENTRY+8, PARSEL~, PARSEL+12, PARSEL+15 |
FD1 | GETDATE+8~, GETDATE+14*, GETDATE+16*, GETDATE+18, GETDATE+41*, GETDATE+44, GETDATE+46, GETDATE+50 |
FD2 | GETDATE+8~, GETDATE+14*, GETDATE+17*, GETDATE+18, GETDATE+54* |
FDA | FLAG+48~ |
FDA( | FLAG+54* |
FIELD | FLAG+4~, FLAG+5*, FLAG+52, FLAG+54 |
FILTER | EN~, EN+10*, EN+11, GETDATE+8~, GETFILT+5~, HDR+6, INIT+5*, INIT+8, BLD~, BLD+5 , GETPAY~, GETPAY+7*, GETPAY+13, CHKPAY~, CHKPAY+11, CHKPAY+17, CHKPAY+18, CHKPAY+19, CHKPAY+20, FILTER+12* , HELP+3~ |
FTEXT | HDR+5~, HDR+6*, HDR+7*, HDR+8*, HDR+10*, HDR+11*, HDR+12*, HDR+13 |
FULL | SELENT~, SELENT+20 |
I | PARSEL+7~, PARSEL+11* |
IENS | FLAG+48~, FLAG+50*, FLAG+52, FLAG+54 |
J | PARSEL+7~, PARSEL+11*, PARSEL+12, PARSEL+13, PARSEL+14 |
L | PARSEL+7~, PARSEL+14*, PARSEL+15 |
LINE | BLD+4~, BLD+6*, BLD1PAY+3~, BLD1PAY+4*, BLD1PAY+9*, BLD1PAY+11*, BLD1PAY+13*, BLD1PAY+15*, BLD1PAY+17*, BLD1PAY+19* , BLD1PAY+20, BLD1PAY+22*, BLD1PAY+23, EDIT+5~ |
LN | BLD+4~ |
MATCHD | CHKPAY+9~, CHKPAY+10*, CHKPAY+23*, CHKPAY+29*, CHKPAY+31 |
MATCHT | CHKPAY+9~, CHKPAY+10*, CHKPAY+12*, CHKPAY+17*, CHKPAY+18*, CHKPAY+19*, CHKPAY+20*, CHKPAY+31 |
MULT | SELENT~, SELENT+19*, SELENT+25, SELENT+29, SELENTRY~, SELENTRY+7*, SELENTRY+8 |
NAME | GETPAY+4~, GETPAY+5*, GETPAY+8, GETPAY+9*, GETPAY+10, GETPAY+12 |
NEWDATE | FILTER+4~, FILTER+7*, FILTER+8, FILTER+11 |
NEWFILT | FILTER+4~, FILTER+9*, FILTER+10, FILTER+12 |
OD1 | GETDATE+8~, GETDATE+21*, GETDATE+38 |
OD2 | GETDATE+8~, GETDATE+21*, GETDATE+50 |
OLDDATE | GETDATE+8~, GETDATE+20*, GETDATE+21, GETDATE+25 |
OLDVAL | FLAG+48~, FLAG+52*, FLAG+53 |
OUTARR | GET1PAY+13~ |
OUTARR( | GET1PAY+15, GET1PAY+16, GET1PAY+20, GET1PAY+23, GET1PAY+25, GET1PAY+28 |
PAYCNT | BLD1PAY~, BLD1PAY+4, BLD1PAY+5, BLD1PAY+20, BLD1PAY+23 |
PCNT | EDIT+5~, SELENT~, SELENT+22*, SELENT+25, SELENT+29*, SELENT+30, SELENT+33, SELENT+34 |
PERR | FLAG+4~, FLAG+14*, FLAG+23*, FLAG+35, FLAG+37 |
PFLAG | CHKPAY+9~, CHKPAY+14*, CHKPAY+17, CHKPAY+20 |
PIEN | GETPAY+4~, GETPAY+11*, GETPAY+12*, GETPAY+13, GETPAY+14, GET1PAY~, GET1PAY+14, GET1PAY+15, GET1PAY+16, GET1PAY+17 , GET1PAY+20, GET1PAY+23, GET1PAY+25, GET1PAY+28, CHKPAY~, CHKPAY+14, CHKPAY+15, CHKPAY+16, CHKPAY+27, EDIT+5~ , EDIT+12*, EDIT+13, EDIT+16, EDIT+23, EDIT+24, EDIT+28, EDIT+29, SELENT+17~, FLAG+4~, FLAG+14* , FLAG+18*, FLAG+22, FLAG+24, FLAG+43*, FLAG+44, FLAG+49*, FLAG+50, FLAG+55, FLAG+57 |
PIENS | SELENT+17~, SELENT+32*, SELENT+37*, SELENT+38, FLAG+4~, FLAG+12*, FLAG+13, FLAG+17, FLAG+18, FLAG+26* , FLAG+30, FLAG+42, FLAG+43, FLAG+47, FLAG+49 |
PROMPT | EDIT+5~, EDIT+11*, EDIT+12, SELENT~, SELENT+29, SELENTRY~, SELENTRY+9, FLAG+4~, FLAG+10*, FLAG+11* , FLAG+12, ASKYN~, ASKYN+8 |
RCCF | GET1PAY+13~, GET1PAY+28*, GET1PAY+29 |
RCID | GET1PAY+13~, GET1PAY+16*, GET1PAY+19, GET1PAY+27 |
RCNAME | GET1PAY+13~, GET1PAY+15*, GET1PAY+18, GET1PAY+27 |
RCPF | GET1PAY+13~, GET1PAY+23*, GET1PAY+24 |
RCTF | GET1PAY+13~, GET1PAY+25*, GET1PAY+26 |
RET | CHKKEY+5~, CHKKEY+6, EDIT+5~, PARSED+4, PARSED+5 |
RET(0 | CHKKEY+7, CHKKEY+10 |
RETURN | GETDATE+8~, GETDATE+11*, GETDATE+31*, GETDATE+41*, GETDATE+54*, GETDATE+56 |
SEL | EDIT+5~, EDIT+12, EDIT+29, EDIT+30, FLAG+51*, FLAG+57, FLAG+58 |
SELS | FLAG+4~, FLAG+12, FLAG+19, FLAG+27*, FLAG+51 |
SORT | INIT+4*, INIT+8, BLD~, GETPAY+6*, GETPAY+9, GETPAY+12 |
START | SELENT~, SELENT+22, SELENT+29, SELENTRY~, SELENTRY+8 |
STOP | FLAG+4~, FLAG+35, FLAG+36*, FLAG+41* |
TFLAG | CHKPAY+9~, CHKPAY+15*, CHKPAY+18, CHKPAY+20 |
TYPE | FLAG~, FLAG+5, FLAG+11 |
U | PARSEL+8 |
>> VALMBCK | GETDATE+10*, EDIT+6*, FLAG+6*, FILTER+5*, HELP+4* |
>> VALMBG | BLD+6*, EDIT+12, FLAG+12 |
>> VALMCNT | BLD+6*, BLD+11* |
>> VALMHDR(1 | HDR+13* |
>> VALMLST | EDIT+12, FLAG+12 |
VALMNOD | PARSEL~, PARSEL+8 |
VALUE | FLAG+48~, FLAG+53*, FLAG+54 |
WLIST | SELENT~, SELENT+18*, SELENT+36 |
X | GETDATE+8~, GETFILT+5~, EDIT+5~, SELENT+17~, SELENTRY+6~, PARSEL+7~, PARSEL+10*, PARSEL+11, PARSED~, PARSED+4 , ASKYN+6~ |
XQH | HELP+3~, HELP+5* |
>> XQORNOD(0 | GETDATE+13, GETFILT+7, SELENT+22 |
XX | GETDATE+8~, GETDATE+13*, GETDATE+14, GETFILT+5~, GETFILT+7*, GETFILT+8*, GETFILT+9, BLD+4~, BLD1PAY+3~, BLD1PAY+6* , BLD1PAY+8*, BLD1PAY+9, BLD1PAY+10*, BLD1PAY+11, BLD1PAY+12*, BLD1PAY+13, BLD1PAY+14*, BLD1PAY+15, BLD1PAY+16*, BLD1PAY+17 , BLD1PAY+18*, BLD1PAY+19, BLD1PAY+21*, BLD1PAY+22, EDIT+5~, SELENT+17~, SELENT+34*, SELENT+35, SELENT+36, FLAG+4~ , FLAG+19*, FLAG+23, FLAG+25 |
Y | GETDATE+8~, GETDATE+30, GETDATE+41, GETDATE+54, GETFILT+5~, GETFILT+25, EDIT+5~, SELENT+17~, SELENTRY+6~, SELENTRY+11 , PARSEL+7~, PARSEL+8*, PARSEL+10*, PARSEL+12*, PARSEL+15*, PARSEL+16, ASKYN+6~, ASKYN+11 |
YY | SELENT+17~, SELENT+36*, SELENT+37 |
ZS | FLAG+4~, FLAG+14*, FLAG+25*, FLAG+27 |
ZZ | FLAG+4~, FLAG+14*, FLAG+24*, FLAG+26 |