86. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 11/9/2018 12:33:52 AM Central Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

86.1 Files compared

# Location File Last Modified
1 CPEE_Build9_Sprint27.zip\HAC_CPE_CH CHMCOB23.m Mon Nov 5 16:43:14 2018 UTC
2 CPEE_Build9_Sprint27.zip\HAC_CPE_CH CHMCOB23.m Fri Nov 9 02:19:54 2018 UTC

86.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 2 874
Changed 1 2
Inserted 0 0
Removed 0 0

86.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

86.4 Active regular expressions

No regular expressions were active.

86.5 Comparison detail

  1   CHMCOB23 ; HRL/dlb;E0 1/E02 MEDI CARE CROSS OVER RECOR D CONSTRUC TION;05/20 /2010 2:08  PM
  2    ;;1;E01 M EDICARE CR OSSOVER RE CORD CONST RUCTION;;M ay 20,2010 ;Build 11
  3            ; DEV002841- 02;MEDICAR E E01/E02  CROSSOVER  RECORD CON STRUCTION;
  4            ; HR-COB-Med icare-A/B- Begin-CR93 72
  5    ;
  6    ;      OC T 5, 2010   DLB         Added/Ch anged func tions to s upport E02  Eligibili ty File Cr eation
  7    ; GEF - C PE USER ST ORY 012 RE PLACE HICN  W/MBI 07/ 03/2017
  8    Q
  9    
  10    ;******** ********** ********** ********** ********** ********** ********** ********** *****;
  11    ; THE FOL LOWING FUN CTIONS UTI LIZE THE $ TEXT FUNCT IONS, AND  CREATE/FOR MAT THE            
  12    ; HEADER, BODY, AND  TRAILER RE CORDS FOR  THE E01 AN D E02 ELIG IBILITY FI LES                
  13    ;******** ********** ********** ********** ********** ********** ********** ********** *****;  
  14    
  15    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  16           ;  PERFORM TH E DATA GAT HERING AND  FORMATTIN G TO PREPA RE THE E01 /E02 RECOR DS               
  17           ;  This funct ion depend s on data  from the C ONFIGURATI ON DATABAS E FILE for                  
  18           ;  1) Directo ry and Fil ename                                                                                     
  19           ;  2) Flag fo r Turning  Header/Tra iler recor ds ON/OFF                                                  
  20           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  21           ;  OCT 5, 201 0   DLB      Modified  to suppor t E01/E02  Eligibilit y File Cre ation            
  22           ;  1) Removed  "type" pa rameter fr om OPENFIL E(DIRFILE)  call                                           
  23           ;  2) Renamed  BLDE01 fu nction to  BLDREC fun ction to m ake it gee nric.                       
  24    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  25    
  26    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL
  27   BLDFILE(CH TYPE)          ;This  is perform ed ONLY af ter ALL Qu alificatio n Checks C ompleted
  28    ; CHTYPE                          Used to  DIFFERENTI ATE E01/E0 2 FILE/REC ORD GENERA TION
  29    ;RETURN:   NONE
  30    ;
  31    N DIRFILE ,COUNT,FUI ,NODE100,C HTI,CHTJ,D ATEARR,IDX ,CHIDX,CON FIG,ADDCNT ,UPDCNT,DE LCNT,ERRMS G
  32    S (ADDCNT ,UPDCNT,DE LCNT)=0                                         ; VARS  USED TO T RACK NUMBE R OF EACH  RECORD TYP E
  33    S CHIDX=$ $GETCFGIDX ^CHMCOBD21 (CHTYPE) ; W !,"CHIDX  = ",CHIDX ,"  E01CNT =",E01CNT, "  E02CNT=  ",E02CNT
  34    S CONFIG= $G(^CHMDIC (741002.72 ,CHIDX,0))         ;  CONFIGURAT ION DATA
  35    Q:((CHIDX =1)&(E01CN T=0))                                           ; NO R ECORDS TO  GENERATE F OR THIS TY PE
  36    Q:((CHIDX =2)&(E02CN T=0)) 
  37    S COUNT=0 ,DIRFILE=" "                                               ; DIRF ILE contai ns the Dir ectory and  Filename  info
  38    I '$$OPEN FILE(.DIRF ILE,CHIDX)  Q
  39    D BLDHDR( CHIDX)                                                                       ; Build a  Header Rec ord (ON/OF F Flag is  in CONFIG)
  40    S CHTI=0
  41    F  S CHTI =$O(^TMP($ J,CHIDX,CH TI)) Q:CHT I=""  D                                             ;  SPONSOR Lo op
  42    .S CHTJ=0                                                                                                                         
  43    .F  S CHT J=$O(^TMP( $J,CHIDX,C HTI,CHTJ))  Q:CHTJ=""   D                     ; Bene L oop for ea ch SPONSOR
  44    ..S NODE1 00=$G(^TMP ($J,CHIDX, CHTI,CHTJ) ), FUI=$P( NODE100,"^ ",2)
  45    ..S:FUI=" A" ADDCNT= ADDCNT+1                                                                  ;  INCREMENT  "ADD" COUN TER
  46    ..S:FUI=" U" UPDCNT= UPDCNT+1                                                                  ;  INCREMENT  "UPDATE" C OUNTER
  47    ..S:FUI=" C" UPDCNT= UPDCNT+1                                                                  ;  INCREMENT  "C" UPDATE  COUNTER;  added 6/10 /2011
  48    ..S:FUI=" D" DELCNT= DELCNT+1                                                                  ;  INCREMENT  "DELETE CO UNTER
  49    ..S:FUI=" DA" ADDCNT =ADDCNT+1, DELCNT=DEL CNT+1                     ; DELE TE/ADD INC REMENTS "A DD"&"DELET E"
  50    ..;W !,"E 0",CHIDX,"  SPON/BENE  ",CHIDX," /",CHTI,"/ ",CHTJ,":  NODE100 =  ",NODE100
  51    ..I FUI[" D" S ELIGD ATES=$$GET TDATES^CHM COB21(CHTI ,CHTJ,CHTY PE)                   ; D,D/A Us e TRACKING  Dates
  52    ..E  S EL IGDATES=$G (^TMP($J,C HIDX,CHTI, CHTJ,"ELIG "))            ; Othe rs use ^TM P Elig Dat es
  53    ..I FUI=" DA" S $P(N ODE100,"^" ,2)="D",CO UNT=COUNT+ $$BLDREC(C HIDX) D      ; First  Send "Dele te" Record
  54    ...S $P(N ODE100,"^" ,2)="A",EL IGDATES=$G (^TMP($J,C HIDX,CHTI, CHTJ,"ELIG ")),COUNT= COUNT+$$BL DREC(CHIDX )  ; Then  "Add"
  55    ...S $P(^ TMP($J,CHI DX,CHTI,CH TJ),"^",2) ="A"                               ; Last R ecord ="AD D" for TRA CKING UPDA TE
  56    ..E  S CO UNT=COUNT+ $$BLDREC(C HIDX)                                                  ; NOT "DA"  Send "ADD " or "UPDA TE"
  57    D BLDTRL( COUNT,CHID X)                                                                        ;  BUILD a Tr ailer Reco rd
  58    D CLOSEFI LE(DIRFILE )                                                                         ;  Do File &  Memory cle anup
  59    D TALLY(A DDCNT,UPDC NT,DELCNT, COUNT,CHTY PE,DIRFILE )
  60    Q
  61    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  62    
  63   TALLY(ADDC NT,UPDCNT, DELCNT,REC ORDS,CHTYP E,DIRFILE)
  64    N TMPIO,F NAME,TODAY ,CHIDX,RPT
  65    S CHIDX=$ $GETCFGIDX ^CHMCOBD21 (CHTYPE) 
  66    S TODAY=$ $FMDATE^CH MCOBD21("N OW")
  67    S FNAME=$ P(^CHMDIC( 741002.72, CHIDX,0)," ^",10)_CHT YPE_"_STAT ISTICS_"_T ODAY_".DAT " ; PRODUC TION DESTI NATION
  68    I $$OPENF ILE^CHMCOB D21(FNAME, "NWS") S T MPIO=$IO U  FNAME D
  69    .S TALLY= ADDCNT_"^" _UPDCNT_"^ "_DELCNT
  70    .I CHTYPE ="E01"  D
  71    ..F LN=1: 1 S STR=$T (RPT001+LN ) Q:STR["E ND OF RECO RD"  D         ; Read  in the Ta ble descri ptor
  72    ...W:(LN= 4)!(LN=6)! (LN=7) !
  73    ...S REC= $$FORMATDA TA(STR,CHI DX) 
  74    ...S TMPI O=$IO U FN AME W !,RE C U TMPIO  S REC=""
  75    .E  I CHT YPE="E02"   D
  76    ..F LN=1: 1 S STR=$T (RPT002+LN ) Q:STR["E ND OF RECO RD"  D         ; Read  in the Ta ble descri ptor
  77    ...W:(LN= 4)!(LN=6)! (LN=7) !
  78    ...S REC= $$FORMATDA TA(STR,CHI DX) 
  79    ...S TMPI O=$IO U FN AME W !,RE C U TMPIO  S REC=""
  80    .U TMPIO  D CLOSEFIL E^CHMCOBD2 1(FNAME) 
  81    Q
  82    
  83    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;
  84    ; OPENFIL E(DIRFILE, FTYPE)  Bu ild the Di rectory/Fi lename         string , Checks t he      
  85    ; CONFIGU RATION Fla g to deter mine if us er wants D ateStamp i n Filename , then             
  86    ; calls t he OPENFIL E function  in the Dr iver (CHMC OBD21.INT)                                        
  87    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;
  88    ; OCT 5,  2010  Modi fied to su pport the  E01/E02 El igibility  File Creat ion                
  89    ;      1)  Removed t he "type"  parameter  from the F unction ca ll                            
  90    ;      2)  Rename ID X to CHIDX  for consi stency acr oss functi ns                            
  91    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;
  92    
  93    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  94   OPENFILE(D IRFILE,CHI DX)
  95    ; DIRFILE                Direct ory and Fi lename fro m the Conf ig File
  96    ; CHIDX                           Determin eS E01/E02  FILENAME
  97    N FLAG
  98    ;S DIRFIL E="CHAMPVA _USER:[ DNS     BUNTAD]ELI GREC_E0"_C HIDX_".TXT "
  99    S DIRFILE =$P(^CHMDI C(741002.7 2,CHIDX,0) ,"^",10)_$ P(^CHMDIC( 741002.72, CHIDX,0)," ^",11)
  100    I $P(^CHM DIC(741002 .72,CHIDX, 0),"^",12) =1 S DIRFI LE=DIRFILE _"_"_$$FMD ATE^CHMCOB D21("NOW")
  101    S DIRFILE =DIRFILE_" ."_$P(^CHM DIC(741002 .72,CHIDX, 0),"^",13)
  102    O DIRFILE :"NWS":5                                          ; Op en the fil e with ope nfile desc riptors
  103    S FLAG=$T EST                                               ; Fi nd out if  successful
  104    ;I FLAG W  !,"OPENED  ",DIRFILE
  105    ;E  W !," COULD NOT  OPEN",DIRF ILE
  106    Q FLAG  
  107    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB        
  108    
  109    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  110    ; CLOSEFI LE    Perf orms file  closure, C leanup                                                       
  111    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  112    
  113   CLOSEFILE( DIRFILE)
  114    ;W !,"CLO SED ",DIRF ILE,"  @ " ,COUNT," R ECORDS",!
  115    C DIRFILE
  116    Q
  117    
  118           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  119           ;  BLDHDR:         DATA  GATHERING  AND FORMAT TING TO BU ID THE HEA DER RECORD                                    
  120    ;      TH IS FUNCTIO N UTILIZES  THE $TEXT  UTILITY T O BUILD HE ADER DATA                              
  121    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  122    ;      OC T 6, 2010      DLB      Modified  to suppor t E01/E02  Eligibilit y File Cre ation                     
  123    ;      1)  Changed V ariable na me fro IDX  to CHIDX  for Consis tency with  other fun ctions  
  124    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  125    
  126   BLDHDR(CHI DX)   ;Thi s is perfo rmed ONLY  after ALL  Qualificat ion Checks .
  127    ; CHIDX                  DIFFER ENTIATES B ETWEEN E01  or E02 AC CESSES INT O ^CHMDIC( 741002.72
  128    ;"RETURN:  Record Co unt
  129    N LN,REC, STR,TMPIO, COLWIDTH,V AR,JUSTIFY ,PAD,FIELD ,RECCNT,VA LUE
  130    S (STR,LN ,COLWIDTH, REC)="",PA D=" "
  131    S REC="", RECCNT=0
  132    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  133    I $P(^CHM DIC(741002 .72,CHIDX, 0),"^",9)= 0  Q RECCN T              ; If U ser did no t request  Header, Qu it
  134    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  135    I CHIDX=1   D
  136    .F LN=1:1  S STR=$T( ELIGHDR+LN ) Q:STR["E ND OF RECO RD"  D  ;  Read in th e ELIG Tab le descrip tor
  137    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                         ;  Extract/Fo rmat data  into the r ecord
  138    .S TMPIO= $IO U DIRF ILE W REC, ! U TMPIO  S REC=""                           ; Write  the Header  Record
  139    I CHIDX=2   D
  140    .F LN=1:1  S STR=$T( ELIGHDR2+L N) Q:STR[" END OF REC ORD"  D  ;  Read in t he ELIG Ta ble descri ptor
  141    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                         ;  Extract/Fo rmat data  into the r ecord
  142    .S TMPIO= $IO U DIRF ILE W REC, ! U TMPIO  S REC=""                           ; Write  the Header  Record
  143    Q 
  144    
  145    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  146    ; BLDREC        E01/ E02 determ ined inter nally                                                                                           ;
  147    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  148    ; Require ments: The  record fo rmat is sp ecified in  the Medic are Crosso ver                         ;
  149    ; Gateway  Requireme nts: Eligi bility and  Medical C laims Docu ment.                                           ;
  150    ; Pages         46-4 7                                                                                                                                                         ;
  151    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  152    ; OCT 6,  2010  DLB      Modifi ed functio n to suppo rt E01/E02  Eligiblit y File Cre ation   ;
  153    ; 1) Adde d switch f or E01/E02  Nodes for  the Recor d Data                                                                       ;
  154    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  155    
  156    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B              
  157   BLDREC(CHI DX)
  158    ;      CH IDX   DIFF ERENTIATES  BETWEEN E 01 AND E02  ACCESSES  IN DATA GA THERING
  159    N DATECNT ,LN,STR,RE C,TMPIO,DT LEN,RECCNT ,VALUE,PAD ,COLWIDTH, TABLE
  160    S (STR,LN ,COLWIDTH, REC,PAD)=" ",RECCNT=0
  161    I CHIDX=1  D
  162    .F LN=1:1  S STR=$T( ELIGE01+LN ) Q:STR["E ND OF RECO RD"  D      ; Read in  the ELIGE 01 Table d escriptor
  163    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                 ; Extract/ Format dat a into the  record
  164    .S TMPIO= $IO U DIRF ILE W REC, ! U TMPIO  S REC=""                           ; Write  the record  to the Fi le                   
  165    E  I CHID X=2 D
  166    .F LN=1:1  S STR=$T( ELIGE02+LN ) Q:STR["E ND OF RECO RD"  D         ; Read  in the EL IGE02 Tabl e descript or
  167    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                 ; Extract/ Format dat a into the  record
  168    .S TMPIO= $IO U DIRF ILE W REC, ! U TMPIO  S REC=""                           ; Write  the record  to the Fi le
  169    Q 1
  170    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  171    
  172           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  173           ;  BLDTRL         PERFOR MS THE DAT A GATHERIN G AND FORM ATTING TO  BUILD THE  TRAILER RE CORD  
  174    ; THIS FU NCTION UTI LIZES THE  $TEXT UTIL ITY                                                          
  175    ; Oct 6,2 010   DLB      Modifi ed functio n to suppo rt E01/E02  Eligibili ty File Cr eation  
  176    ; 1) Adde d switch f or E01/E02  Nodes for  Header/Tr ailer ON-O FF flag                       
  177    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  178    
  179   BLDTRL(COU NT,CHIDX)      ;This  is perform ed ONLY af ter ALL Qu alificatio n Checks.
  180    ; COUNT                  Number  of record s built
  181    ; CHIDX                  DETERM INES E01/E 02 CONFIGU RATION
  182    ;RETURN:   NONE
  183    ;      
  184    N LN,REC, STR,TMPIO, COLWIDTH,V AR,JUSTIFY ,PAD,FIELD ,VALUE
  185    S (STR,LN ,COLWIDTH, REC)="",PA D=" "                                                          ;  Default PA D Characte r is Space
  186    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  187    I $P(^CHM DIC(741002 .72,CHIDX, 0),"^",9)= 0  Q                                        ; If User  did not re quest Head er, Quit
  188    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  189    I CHIDX=1   D
  190    .F LN=1:1  S STR=$T( ELIGTRL+LN ) Q:STR["E ND OF RECO RD"  D         ; Read  in the EL IGTRL Tabl e descript or
  191    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                         ;  Extract/Fo rmat data  into the r ecord
  192    .S TMPIO= $IO U DIRF ILE W REC, ! U TMPIO  S REC=""
  193    I CHIDX=2   D
  194    .F LN=1:1  S STR=$T( ELIGTRL2+L N) Q:STR[" END OF REC ORD"  D        ; Read  in the EL IGTRL Tabl e descript or
  195    ..S REC=R EC_$$FORMA TDATA(STR, CHIDX)                                                         ;  Extract/Fo rmat data  into the r ecord
  196    .S TMPIO= $IO U DIRF ILE W REC  U TMPIO S  REC=""
  197    Q
  198    
  199   FMEXT(FMDA TE)
  200    S Y=FMDAT E
  201    D DD^%DT
  202    Q Y
  203    
  204    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;
  205    ; GETDTST R(COUNT,DT STR,COLWID TH,JUSTIFY ,PAD) Perf orms the f ormatting  of        
  206    ; the Eli gibility D ates for t he buildin g of the E 01 Records .            
  207    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;
  208    
  209   GETDTSTR()
  210    ;      CO UNT:  Numb er of Elig ibility Da tes to Inc lude
  211    ;RETURN:        Form atted Date  String fo r the E01  Record
  212    ;
  213    N SEQ,VAR ,EDTSTR,PC ,FROMDT,TO DT,MAX
  214    S EDTSTR= ""    
  215    S MAX=$L( ELIGDATES, "^")                                                     ; Initia lize ELIG  Date Strin g
  216    S FROMDT= $P(ELIGDAT ES,"^",1)
  217    S:FROMDT] "" FROMDT= FROMDT+170 00000
  218    S TODT=$P (ELIGDATES ,"^",2)
  219    S:TODT]""  TODT=TODT +17000000 
  220    I FROMDT' ="" I TODT ="" S TODT ="00000000 "
  221    S:FROMDT] "" EDTSTR= FROMDT_TOD T
  222    Q EDTSTR                                                                      ; Return  Completed  String
  223    
  224           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  225           ;  FORMATDATA (STR CONTA INING FIEL D,VAR,COLW IDTH,JUSTI FY,PAD)                                                            
  226    ; PERFORM  THE DATA  FORMATTING  TO GENERA TE THE E01  RECORDS                                          
  227    ;      FI ELD   Data  Field bei ng Formatt ed                                                                    
  228    ;      VA R = Variab le contain ing the E0 1 Data                                                       
  229    ;      CO LWIDTH = W idth of th e column f rom ELIG T EXT TABLE                                         
  230    ;      JU STIFY = RI GHT(R) or  LEFT(L) Ju stify outp ut                                                
  231    ;      PA D: PAD Cha racter to  use in jus tification                                                   
  232    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  233    
  234   FORMATDATA (STR,CHIDX )   ;Pulls  and Forma ts Data in  E01 Colum ns"
  235    ;      ST R              $TEXT  String des cribing th e record 
  236    ;"RETURN:  FORMATTED  OUTPUT VA LUE"
  237    ;
  238    N VALUE,T MPIO,COLWI DTH,VAR,JU STIFY,PAD, FIELD
  239    S TMPIO=$ IO,VALUE=" ",VAR=""
  240    S COLWIDT H=$P(STR," ;",5),JUST IFY=$P(STR ,";",6)                   ; Get  Colwidth &  Justify v alues
  241    S FIELD=$ P(STR,";", 3),PAD=$P( STR,";",7)                                             ; Get Fiel d Name & P ad Charact er
  242    S VALUE=" S VAR="_$P (STR,";",4 ) X VALUE                                     ; VAR No w contains  the desir ed value
  243    ; GEF - C PE USER ST ORY 012 RE PLACE HICN  W/MBI 07/ 03/2017
  244    I FIELD=" HICN" S VA R=$S($P(NO DE100,"^", 12)'="":$P (NODE100," ^",12),DT< ($P($G(^CH MDIC(74100 2.72,CHIDX ,0)),"^",2 1)):$P(NOD E100,"^",8 ),1:"")
  245    I CHIDX=1   D                                                                                           ; E0 1 SEX FLAG
  246    .S:FIELD= "SEX" VAR= $S(VAR="M" :"M",VAR=" F":"F",1:" M")   ; De fault SEX= M if Undef ined
  247    E  I CHID X=2  D                                                                                                 ; E02  SEX FLAG
  248    .S:FIELD= "SEX" VAR= $S(VAR="M" :"1",VAR=" F":"2",1:" 1")   ; De fault SEX= 1 if Undef ined
  249    S:JUSTIFY ="L" VALUE =$E($$LJ(V AR,COLWIDT H,PAD),1,C OLWIDTH)                ; Left J ustify
  250    S:JUSTIFY ="R" VALUE =$E($$RJ(V AR,COLWIDT H,PAD),1,C OLWIDTH)                ; Right  Justify
  251    S:JUSTIFY ="C" VALUE =$E($$CJ(V AR,COLWIDT H,PAD),1,C OLWIDTH)                ; Center  Justify 
  252    Q VALUE
  253    
  254    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  255    ; Right/L eft/Center  Justify f unctions c ourtesy of  JBM 7/2/2 010                                    
  256    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  257    
  258   LJ(STR,SIZ E,PAD1) ;
  259            N  RET,PAD
  260            S  PAD=""
  261            S  $P(PAD,PA D1,SIZE)=P AD1
  262            S  RET=$E(ST R_PAD,1,SI ZE)
  263            Q  RET
  264   RJ(STR,SIZ E,PAD1) 
  265            N  RET,PAD
  266            S  PAD=""
  267            S  $P(PAD,PA D1,(SIZE-$ L(STR)+1)) =""
  268            S  RET=PAD_S TR
  269            Q  RET
  270   CJ(STR,SIZ E,PAD1)
  271           N  RET,PAD,ST RLN,SIZ2
  272           S  STRLN=$L(S TR),SIZ2=S IZE-STRLN
  273           S  PAD=""
  274           S  $P(PAD,PAD 1,((SIZ2/2 )+(SIZ2#2) ))=PAD1
  275           S  RET=$E(PAD _STR_PAD,1 ,SIZE)
  276           Q  RET
  277           
  278                    
  279           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;; 
  280    ; THE $TE XT DATA DE SCRIBES TH E DATA AND  FORMAT FO R THE RECO RDS                           
  281    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  282           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  283           ;        ELIG HDR:         Common H eader for  E01/E02 El igibility  Files                                
  284           ;                 First  Entry: Fie ld Descrip tors                                                       
  285           ;                 HEADER  TYPE CODE :  "E00" f or E01/E02  Files                                          
  286           ;                 COBA I D:  Likely  different  for E01/E 02 Files                                        
  287           ;                 HEADER  DATE: DAT E FILE WAS  CREATED                                                            
  288           ;                 STATE:  NOT USED  FOR COBA F ILES                                                       
  289           ;                 FILL:  178 Charac ters of Sp aces                                                       
  290           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;
  291           ;  OCT 6, 201 0   DLB      modified  table to  support E0 1/E02 Elig ibility Fi le Creatio n     
  292           ;        1) C OBA ID val ues differ ent for E0 1/E02. Cha nge in BLD REC variab le name CH IDX   
  293           ;                 is ref lected in  the Table  for switch ing betwee n E01/E02  Nodes
  294           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;            
  295           
  296    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB        
  297   ELIGHDR ;; Elig Recor d;Value;Re cord Lengt h;Justify; Pad;Valida tion
  298           ;; HDRTYPE;"E 00";3;L; ; 1A2N;
  299           ;; COBAID;$P( ^CHMDIC(74 1002.72,CH IDX,0),"^" ,3);9;L; ; 9AN;
  300           ;; HDRDATE;$$ FMTOYYYYMM DD^CHMCOBD 21($$FMDAT E^CHMCOBD2 1("NOW")); 8;L; ;8N;
  301           ;; STATE;" "; 2;L; ;2A;
  302           ;; HDRFILL;"  ";178;L; ; 178;
  303           ;; END OF REC ORD;
  304    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  305    
  306    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB        
  307   ELIGHDR2 ; ;Elig Reco rd;Value;R ecord Leng th;Justify ;Pad;Valid ation
  308           ;; HDRTYPE;"E 00";3;L; ; 1A2N;
  309           ;; COBAID;$P( ^CHMDIC(74 1002.72,CH IDX,0),"^" ,3);10;R;0 ;10AN;
  310           ;; HDRDATE;$$ FMTOYYYYMM DD^CHMCOBD 21($$FMDAT E^CHMCOBD2 1("NOW")); 8;L; ;8N;
  311           ;; STATE;" "; 2;L; ;2A;
  312           ;; HDRFILL;"  ";177;L; ; 177;
  313           ;; END OF REC ORD;
  314    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  315           
  316    
  317           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  318           ;        ELIG TRL:         Common T railer for  E01/E02 E ligibility  Files
  319           ;                 TRAILE R TYPE: "E 99" for E0 1/E02 File s
  320           ;                 COUNT:  TOTAL NUM BER of BEN EFICIARY R ECORDS in  File
  321           ;                 E01 RE CORD COUNT : TOTAL NU MBER OF E0 1 RECORDS  IN FILE
  322           ;                 E02 RE CORD COUNT : TOTAL NU MBER of E0 2 RECORDS  IN FILE
  323           ;                 FILLER : 176 SPAC ES
  324           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;
  325           
  326   ELIGTRL ;; Elig Recor d;Value;Re cord Lengt h;Justify; Pad;Valida tion
  327           ;; TYPE;"E99" ;3;L; ;1A2 N;
  328           ;; COUNT;COUN T;7;R;0;7N ;
  329           ;; FILL;" ";1 90;L; ;190 A;
  330           ;; END OF REC ORD; 
  331           
  332   ELIGTRL2 ; ;Elig Reco rd;Value;R ecord Leng th;Justify ;Pad;Valid ation
  333           ;; TYPE;"E99" ;3;L; ;1A2 N;
  334           ;; COUNT;COUN T;7;R;0;7N ;
  335           ;; E01CNT;0;7 ;R;0;7N;
  336           ;; E02CNT;COU NT;7;R;0;7 N;
  337           ;; FILL;" ";1 76;L; ;176 A;
  338           ;; END OF REC ORD; 
  339    
  340    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;;                
  341           ;        ELIG E01 TABLE:  Contains  the Descri ptions for  all data  to be                                          
  342           ;        gath ered for E 01 File. U sed by $TE XT to gath er all dat a & set up  format                   
  343           ;    Each rec ord is des cribed in  detail for  the follo wing Param eters:                               
  344           ;- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------;
  345           ;        RECO RD NAME;^T MP DATA VA LUE;LENGTH ;JUSTIFY R /L;PAD Cha racter;Val idation;                  
  346           ;- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------;
  347           ;  OCT 6, 201 0   DLB      Modified  to suppor t E01/E02  Eligibilit y File cre ation                     
  348           ;        1) E 01 Records  pull data  from the  ^CHMCOB()  E01 Node,  CHIDX cont ains the i ndex for       
  349           ;                 the E0 1 Node.                                                                                           
  350           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;
  351           
  352    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  353   ELIGE01 ;; Elig Recor d;Record V alue;Recor d Length;J ustify;Pad ;Validatio n
  354           ;; TYPE;"E01" ;3;L; ;1A2 N;
  355           ;; COBAID;$P( ^CHMDIC(74 1002.72,CH IDX,0),"^" ,3);9;L; ; 9AN;
  356           ;; EFF DATE;$ $FMTOYYYYM MDD^CHMCOB D21($$FMDA TE^CHMCOBD 21("NOW")) ;8;L; ;8N; "";
  357           ;; FUI;$P(NOD E100,"^",2 );1;L; ;1A ;
  358           ;; SURNAME;$P (NODE100," ^",3);20;L ; ;20AP;
  359           ;; FNAME;$P(N ODE100,"^" ,4);12;L;  ;12AP;
  360           ;; MI;$P(NODE 100,"^",5) ;1;L; ;1A;
  361           ;; DOB;$$FMTO YYYYMMDD^C HMCOBD21($ P(NODE100, "^",6));8; L; ;8N;
  362           ;; SEX;$P(NOD E100,"^",7 );1;L; ;1A ;
  363           ;; HICN;$P(NO DE100,"^", 8);12;L; ; 12AN;
  364           ;; SUPPLEMENT AL ID;$P(N ODE100,"^" ,9);25;L;  ;25AN;                                   
  365           ;; GROUP POLI CY #;$P(^C HMDIC(7410 02.72,CHID X,0),"^",1 4);20;L; ; 20AN;
  366           ;; ELIGDATES; $$GETDTSTR ();80;L; ; 8AN;
  367           ;; END OF REC ORD;
  368    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB
  369           
  370    ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;;                
  371           ;        ELIG E02 TABLE:  Contains  the Descri ptions for  all data  to be                                          
  372           ;        gath ered for E 02 File. U sed by $TE XT to gath er all dat a & set up  format                   
  373           ;    Each rec ord is des cribed in  detail for  the follo wing Param eters:                               
  374           ;- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------;
  375           ;        RECO RD NAME;^T MP DATA VA LUE;LENGTH ;JUSTIFY R /L;PAD Cha racter;Val idation;                  
  376           ;- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------;
  377           ;- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------;
  378           ;  OCT 6, 201 0   DLB      Modified  to suppor t E01/E02  Eligibilit y File cre ation                     
  379           ;        1) E 02 Records  pull data  from the  ^CHMCOB()  E02 Node,  CHIDX cont ains the i ndex for       
  380           ;                 the E0 2 Node.                                                                                           
  381           ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;
  382    
  383    ;HR-MEDCO B-Medicare -A/B-Begin -XXE02 (2- 25-2011)DL B
  384   ELIGE02 ;; Elig Recor d;Record V alue;Recor d Length;J ustify;Pad ;Validatio n
  385           ;; TYPE;"E02" ;3;L; ;1A2 N;
  386           ;; COBAID;$P( ^CHMDIC(74 1002.72,CH IDX,0),"^" ,3);10;R;0 ;10AN;
  387           ;; SURNAME;$P (NODE100," ^",3);20;L ; ;20AP;
  388           ;; FNAME;$P(N ODE100,"^" ,4);12;L;  ;12AP;
  389           ;; MI;$P(NODE 100,"^",5) ;1;L; ;1A;
  390           ;; DOB;$$FMTO YYYYMMDD^C HMCOBD21($ P(NODE100, "^",6));8; L; ;8N;
  391           ;; SEX;$P(NOD E100,"^",7 );1;L; ;1A ;
  392           ;; SUPPLEMENT AL ID;$P(N ODE100,"^" ,9);9;L; ; 9AN;
  393           ;; HICN;$P(NO DE100,"^", 8);12;L; ; 12AN;
  394           ;; ELIGSTDATE ;$$FMTOYYY YMMDD^CHMC OBD21($P(E LIGDATES," ^",1));8;L ; ;8AN;
  395           ;; ELIGNDDATE ;$$FMTOYYY YMMDD^CHMC OBD21($P(E LIGDATES," ^",2));8;L ; ;8AN;
  396           ;; FUI;$P(NOD E100,"^",2 );1;L; ;1A ;       
  397           ;; DCN;" ";15 ;L; ;15AN;
  398           ;; NPLANID;"  ";10;L; ;1 0AN;
  399           ;; INSTYPE;$P (CONFIG,"^ ",20);1;L;  ;1AN;
  400           ;; RELCODE;$P (NODE100," ^",10);3;L ; ;3A;
  401           ;; RXPOLICY # ;$P(NODE10 0,"^",9);2 0;L; ;20AN ;
  402           ;; RXGRP #;"  ";15;L; ;1 5AN;
  403           ;; RXBIN #;$P (CONFIG,"^ ",15);6;L;  ;6AN;
  404           ;; RXPCN #;$P (CONFIG,"^ ",16);10;L ; ;10AN;
  405           ;; RXTFN #;$P (CONFIG,"^ ",17);18;L ; ;18N;
  406           ;; RXNBI;$P(C ONFIG,"^", 18);1;L; ; 1N;
  407           ;; RXCCI;$P(C ONFIG,"^", 19);1;L; ; 1A;
  408           ;; FILL;" ";7 ;L; ;7A;
  409           ;; END OF REC ORD;
  410    ;HR-MEDCO B-Medicare -A/B-End-X XE02 (2-25 -2011)DLB        
  411    
  412    
  413   RPT001  ;; Elig Recor d;Record V alue;Recor d Length;J ustify;Pad ;Validatio n
  414           ;; TITLE;CHTY PE_" Stati stics ( "_ $P(FNAME," ]",2)_" )" ;80;C; ;;
  415           ;; SUBTITLE;" Medicare C rossover E ligibility  Statistic s";80;C; ; ;
  416           ;; SUBTITLE2; "Processed  "_$$FMEXT ($$FMDATE^ CHMCOBD21( "NOW"));80 ;C; ;;
  417           ;; SUBTITLE3; "  The fol lowing sta tistics sh ow the res ults of th e current  Medicare C rossover"; 80;L; ;;
  418           ;; SUBTITLE4; "  Eligibi lity compa red to the  previous  Medicare C rossover s tatus:";80 ;L; ;;
  419           ;; FILENAME;C HTYPE_" FI LE:  "_DIR FILE;80;C;  ;;
  420           ;; ADDCNT;"      Number  Added:   " _$$RJ($P(T ALLY,"^",1 ),10," ")_ "     Bene  Records N ot Previou sly Sent"; 80;L; ;;
  421           ;; UPDCNT;"      Number  Updated: " _$$RJ($P(T ALLY,"^",2 ),10," ")_ "     Chan ges to Ben e Data/Eli gibility P eriods";80 ;L; ;;
  422           ;; DELCNT;"      Number  Deleted: " _$$RJ($P(T ALLY,"^",3 ),10," ")_ "     Bene s No Longe r Eligible ";80;L; ;;
  423           ;; FILL;" ";7 ;L; ;;
  424           ;; END OF REC ORD;
  425    
  426    
  427   RPT002  ;; Elig Recor d;Record V alue;Recor d Length;J ustify;Pad ;Validatio n
  428           ;; TITLE;CHTY PE_" Stati stics ( "_ $P(FNAME," ]",2)_" )" ;80;C; ;;
  429           ;; SUBTITLE;" Medicare P art D COB  Eligibilit y Statisti cs";80;C;  ;;
  430           ;; SUBTITLE2; "Processed  "_$$FMEXT ($$FMDATE^ CHMCOBD21( "NOW"));80 ;C; ;;
  431           ;; SUBTITLE3; "  The fol lowing sta tistics sh ow the res ults of th e current  Medicare P art D";80; L; ;;
  432           ;; SUBTITLE4; "  COB Eli gibility c ompared to  the previ ous Medica re Part D  COB status :";80;L; ; ;
  433           ;; FILENAME;C HTYPE_" FI LE:  "_DIR FILE;80;C;  ;;
  434           ;; ADDCNT;"      Number  Added:   " _$$RJ($P(T ALLY,"^",1 ),10," ")_ "     Bene  Records N ot Previou sly Sent"; 80;L; ;;
  435           ;; UPDCNT;"      Number  Updated: " _$$RJ($P(T ALLY,"^",2 ),10," ")_ "     Chan ges to Ben e Data/Eli gibility P eriods";80 ;L; ;;
  436           ;; DELCNT;"      Number  Deleted: " _$$RJ($P(T ALLY,"^",3 ),10," ")_ "     Bene s No Longe r Eligible ";80;L; ;;
  437           ;; FILL;" ";7 ;L; ;;
  438           ;; END OF REC ORD;