255. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 11/9/2018 12:34:12 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.

255.1 Files compared

# Location File Last Modified
1 CPEE_Build9_Sprint27.zip\HAC_CPE_CH CHMXV001.m Mon Nov 5 16:44:10 2018 UTC
2 CPEE_Build9_Sprint27.zip\HAC_CPE_CH CHMXV001.m Mon Nov 5 17:53:31 2018 UTC

255.2 Comparison summary

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

255.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

255.4 Active regular expressions

No regular expressions were active.

255.5 Comparison detail

  1   CHMXV001         ;HAC /jsg/jbm;V ENDOR IDEN TIFICATION  DRIVER (H EALTH CARE  CLAIMS);0 4/03/09 10 :10 AM
  2           ;; 1;AUTO VEN DOR SELECT ION;;Dec 2 1,2009;Bui ld 4
  3           ;D EV002841-0 2;AUTO VEN DOR SELECT ION PROCES S for EDI/ OCR Claims ;
  4           ;  3/28/2012  DLB SET TH E CHNTT FL AG TO -1   TO INHIBIT  SAVING TH E VENDOR L IST TO ^CH MIMAGE(I,1 00
  5           ;                                                                                       0   TEST MODE : WRITES T HE LIST TO  IO, INHIB ITS SAVING  TO ^CHMIM AGE(I,100
  6           ;                                                                                       1   PROD MOD:  SAVES THE  VENDOR LI ST TO ^CHM IMAGE(I,10 0
  7           ;  MTN016194- 01 09-20-1 2 jeh; Upd ate "Claim  Check Pro cessing Er ror" distr ibution li st
  8           ;  MTN014982- 02 JEH 11/ 20/12 - ad ding addre ss checks
  9           ;  MTN014982- 02 JJN 11/ 20/12 - ad ded logic  if P2A did  not come  in on the  837 submis sion. Use  PA in this  case
  10           Q        ; MU ST CALL A  FUNCTION E NTRY POINT  WITHIN TH IS ROUTINE
  11   QUEUES  ;  Entry poin t to cycle  through P DIs in the  AVS queue s (VEN-EDI ,VEN-OCR2)  in global  ^CHMIMG. 
  12           X  ^%ZOSF("UC I") S UCI= $P(Y,",")
  13           Q: $D(^CHMZHO LD("AVS-RU NNING"))   ; Already  runnning
  14           S  ^CHMZHOLD( "AVS-RUNNI NG")=""  ;  Set runni ng flag
  15                    N CH WEBFLG,CHW EBERR  ; W eb service  flag and  error plac eholder 
  16                    S CH WEBFLG=1,C HWEBERR="" ,CHAVSPDI= ""  ; Assu mes the we b service  is working
  17                    FOR  CHQUE="VEN -EDI","VEN -OCR2" {
  18                             S CHPD I=0
  19                             S CHNT T=1   ; Se tting to 1  will stor e AVS resu lt in CHMI MAGE(I,100 ) NODE, -1  inhibits  store DLB  3/29/2012
  20                             WHILE  $O(^CHMIMG (CHQUE,CHP DI))>0 {
  21                                      S CHPDI= $O(^CHMIMG (CHQUE,CHP DI))
  22                                      I ^CHMIM G(CHQUE,CH PDI)'="",^ CHMIMG(CHQ UE,CHPDI)' =UCI conti nue  ; onl y process  same UCI i f requeste d that way
  23                                      I CHWEBF LG=1 S STA TUS=$$AVSp di^AHCJSU( CHPDI,CHNT T,.CHAVSER R)  ; Only  call if w eb service  has no er rors recei ved, other wise it bl ow by web  service an d load int o edi/ocr  queue
  24                                      I STATUS =99&(CHWEB FLG=1) S C HWEBFLG=0, CHWEBERR=C HAVSERR    ; Traps fi rst Web se rvice erro r
  25                                      D QUpdat e(CHPDI)
  26                             }
  27           }
  28               K ^CHMZHO LD("AVS-RU NNING")  ;  Killing r unning job  node when  finished
  29           I  CHWEBFLG=0  {
  30                    D VM AIL S $ZE= CHWEBERR D  ^%ZTER  ;  Send out  an mailman  for first  webservic e found du ring run a nd trigger  an error  in the err or trap
  31           }
  32                    Q
  33   REPROCESS        ; En try point  to run all  PDI'S fro m the EDI  queue and  OCR queue.
  34                    N CH WEBFLG,CHW EBERR  ; W eb service  flag and  error plac eholder 
  35                    S CH WEBFLG=1,C HWEBERR=""   ; Assume s the web  service is  working
  36                    FOR  CHQUE="OCR -READY","O CR2-READY"  {
  37                             S CHPD I=0
  38                             S CHNT T=1   ; Se tting to 1  will stor e AVS resu lt in CHMI MAGE(I,100 ) NODE, -1  inhibits  Store DLB  3/29/2012
  39                             WHILE  $O(^CHMIMG (CHQUE,CHP DI))>0 {
  40                                      S CHPDI= $O(^CHMIMG (CHQUE,CHP DI))
  41                                      I CHWEBF LG=1 S STA TUS=$$AVSp di^AHCJSU( CHPDI,CHNT T,.CHAVSER R)  ; Only  call if w eb service  has no er rors recei ved, other wise it bl ow by web  service an d load int o edi/ocr  queue
  42                             I STAT US=99&(CHW EBFLG=1) S  CHWEBFLG= 0,CHWEBERR =CHAVSERR    ; Traps  first Web  service er ror
  43                             }
  44           }
  45           
  46           I  CHWEBFLG=  0 D VMAIL  S $ZE=CHWE BERR D ^%Z TER ; Send  out an ma ilman for  first webs ervice fou nd during  run and tr igger an e rror in th e error tr ap
  47                    Q
  48   TEST    ;
  49           N  INPDI,ERRO R,RETVAL,X X
  50           X  ^%ZOSF("ZS ETWIDE") S  X=132 X ^ %ZOSF("RM" )
  51   TEST1   
  52           W  #
  53           W  "********* ********** ********** ******"
  54           W  !,"*    A  V S  Testi ng Utility        *"
  55           W  !,"*Test O NLY - No u pdates to  system *"   
  56               W !,"**** ********** ********** ********** *"
  57           R  !!,"Enter  PDI: ",INP DI:120
  58           Q: INPDI=""
  59           S  RETVAL=$$A VSpdi(INPD I,0,.CHAVS ERR)
  60           I  RETVAL=99  {
  61                    W !! ,"AVS-ERRO R: "_CHAVS ERR
  62           }
  63           R  !!,?30,"<R eturn to c ontinue>", XX:60
  64           G  TEST1
  65   AVSpdi(PDI ,CHNTT,AVS ERR)         ; Auto V ender sele ction call  for a giv en PDI
  66                    ; AV Spdi - Ret urns a sta tus 0 - Un succesful,  not able  to return  selected v endors
  67                    ;                                       1 - Succ essful, ab le to retu rn selecte d vendors)
  68                    ;                             99 - We b Service  Error - Er ror discri ption retr uned varia ble set to  parameter  3)
  69                    ;
  70                    ; Pa rmeter 1 ( Input): PD I
  71                    ; Pa rmeter 2 ( Input): CH NTT - Test ing/Prod f lg...displ ay data as  it runs
  72                    ;                                  Se t to 0 - T esting
  73                    ;                                  Se t to 1 - P rod - This  will stor e selected  vendors t o ^CHMIMAG E(CHPDI,10 0) which i s the AVS  node
  74                    ;                                           Set  to -1 - Pr od - This  will inhib it the sel ected vend ors storag e to ^CHMI MAGE(CHPDI ,100)  DLB  3/29/2012
  75                    ; Pa rameter 3  (Output):  variable p lace holde r for Retr un Error f rom AVS (c ache error  or Web se rvice erro r)
  76                    ;
  77                    S:'$ D(CHNTT) C HNTT=0 ; I f Test/Pro d flag is  null set t o zero
  78                    S:(C HNTT'=1) C HNTT=0   ;  Must send  a 1 OR -1 , else con sidered te st  DLB 3/ 29/2012 
  79                    S $Z T="AVSERR^ CHMXV001"   ;Error tr aps catche s anything  within th is functio n and belo w
  80                    ; ne xt line is  for devel opment onl y
  81                    X ^% ZOSF("UCI" ) S UCI=$P (Y,",") 
  82                    ;I U CI="DEVSLA " Q $$AVSp di^AHCJSU( PDI,CHNTT, .AVSERR)
  83                    ; Th is is goin g to be us ed only fo r OCR
  84                    ;Q $ $AVSpdi^AH CJSU(PDI,C HNTT,.AVSE RR)
  85                    S U= "^"
  86                    N RE T,PMT 
  87                    S RE T=0,AVSERR =""
  88                    IF $ $GetBillTo PosData(PD I,.PA,.P2P A,.SLA) {
  89                             S:$P(P 2PA,"^",1) ="" P2PA=P A
  90                             W:CHNT T=0 !!,"So urce Claim : ",!,"TIN    : Remit  Address    : Physica l Zip : Fa cility Typ e"
  91                             W:CHNT T=0 !,$P(P 2PA,U,1),? 14," : "_$ P(P2PA,U,2 )_" : "_$T R($P(P2PA, U,3,7),"^" ,",")_" :  "_$P(SLA,U ,7)_" : "_ $P(P2PA,U, 9)   
  92                       S  NPIC=$$Re quest^CHMX V012(P2PA, SLA,PDI,.P ICKED)            ;Au to Select
  93                       ; **** FOR T ESTING ONL Y when CHN TT=0 ****                                                  ;
  94                       I F CHNTT=0 
  95                           W !!,"To tal Select ed by ILOG : ",NPIC
  96                           IF NPIC> 0 { W !,"- ---------- ---------- ---------- --- " S V= 0
  97                              WHILE  $O(PICKED (V))>0 { S  V=$O(PICK ED(V))
  98                                 ;W  !,V,?8,":  ",PICKED( V,1),!,?10 ,PICKED(V, 2)
  99                                 W  !,$P(PICKE D(V,1),U)_ "-"_$P($G( ^CHMVEN(V, 0)),"^",23 ),?14," :  "_$P(PICKE D(V,1),U,2 )_" : ",$T R($P(PICKE D(V,1),U,3 ,7),"^",", ")_" : "_$ P(PICKED(V ,2),U,7)_"  : "_$P(PI CKED(V,1), U,9)
  100                      
  101                              } 
  102                           } 
  103                       }
  104                                 ;* *** END OF  TESTING O NLY SECTIO N ****                            ;
  105                       ; Save Auto  Selected v endor(s);  CHNTT=1 AL LOWS, CHNT T=0 OR -1  WILL Inhib it call to  SAVE^CHMX V002  DLB  3/29/2012                                              ;
  106                       I F NPIC>0&( CHNTT>0) {  D SAVE^CH MXV002(PDI ,NPIC,.PIC KED) }  ;P ut picked  to ^CHMIMA GE
  107                             I NPIC >0 S RET=1
  108                       K  PTIN,P2TI N,PICKED,N PIC                        ;Clea n TINs & p icked arra ys
  109                    }
  110                    Q RE T   ; Assu me success ful for no w
  111                    ;
  112   GetBillToP osData(PDI ,PA,P2PA,S LA)
  113                    ; Th is pulls t he Provide r, Bill-To , and Serv ice/POS ad dress info rmation
  114                    ; fr om either  OCR or the  EDI elect ronic subm issions
  115                    N RE T,PTRS
  116                    S (P A,P2PA,SLA )=""
  117                    S RE T=0
  118                    I PD I="" Q RET
  119                    S PT RS=$G(^CHM IMAGE(PDI, "BUFF")) I  PTRS="" Q  RET
  120                    IF $ P(PTRS,"^" ,1)="OCR"  {
  121                             N BT,P OS,NM,SLAD ATA,P2PADA TA
  122                             IF $D( ^CHMIMAGE( PDI,200))& ($D(^CHMIM AGE(PDI,20 1))) { 
  123                                      S BT=^CH MIMAGE(PDI ,200,1,0), POS=^CHMIM AGE(PDI,20 1,1,0)
  124                                      S NM=$P( BT,U,5)
  125                                      I NM=""  S NM=$P(BT ,U,2) S:NM ]"" NM=NM_ " " S:$P(B T,U,4)]""  NM=NM_$P(B T,U,4) S N M=NM_" "_$ P(BT,U,3)
  126                                      S P2PA=$ P(BT,U,1)_ U_NM_U_$P( BT,U,6,10)
  127                                      S NM=$P( POS,U,5)
  128                                      I NM=""  S NM=$P(PO S,U,2) S:N M]"" NM=NM _" " S:$P( POS,U,4)]" " NM=NM_$P (POS,U,4)  S NM=NM_"  "_$P(POS,U ,3)
  129                                      S SLA=$P (POS,U,1)_ U_NM_U_$P( POS,U,6,10 )
  130                             ;If ei ther the S ervice loc ation data  or Bill-t o data is  blank then  set it to  the other
  131                             ;   So metimes th e provider  only send s one.
  132                             S P2PA DATA=0 F P C=3:1:$L(P 2PA,U) I $ P(P2PA,U,P C)'="" S P 2PADATA=1
  133                             S SLAD ATA=0 F PC =3:1:$L(SL A,U) I $P( SLA,U,PC)' ="" S SLAD ATA=1
  134                             S:SLAD ATA=1&(P2P ADATA=0) P 2PA=SLA
  135                             S:SLAD ATA=0&(P2P ADATA=1) S LA=P2PA
  136                             S PA=P 2PA ; Prov ider shoul d be same  as Pay to  (P2PA) for  OCR
  137                             S RET= 1
  138                             }
  139                    }        
  140                    ELSE  {
  141                             S CLAP =$P(PTRS,U ,3),CLBP=$ P(PTRS,U,4 ),CLCP=$P( PTRS,U,5), CLEP=$P(PT RS,U,6)
  142                             S P2TI N=$P($G(^C HMXCLB(CLB P,1)),U,2)                                ; Get Pay To  TIN
  143                       S  PTIN=$P($ G(^CHMXCLB (CLBP,0)), U,2)                    ;Return  Billing/Re ndering TI N
  144                       ; Get addres ses:                                                               ;
  145                       S  PA=$$GetA ddr(CLBP,0 ,"")                                     ;P rovider ad dr
  146                       S  P2PA=$$Ge tAddr(CLBP ,1,"")                            ;Pay-To p rovider ad dr
  147                       S  SLA=$$Get Addr(CLEP, 60,"")                           ;Service l ocation ad dr
  148                             ;JJN 1 1/20/12 -  begin MTN0 14982-02
  149                             ;if P2 A did not  come in on  the 837 s ubmission.  Use PA in  this case
  150                             I $P(P 2PA,"^",3) ="" S P2PA =PA    ;JJ N 11/20/12  - MTN0149 82-02
  151                             E  D    ;else in  5010 the f ull P2A in formation  comes from  both the  PA and the  P2A
  152                             .S $P( P2PA,U,1)= $P(PA,U,1)    ;JJN 11 /20/12 - M TN014982-0 2
  153                             .S $P( P2PA,U,2)= $P(PA,U,2)    ;JJN 11 /20/12 - M TN014982-0 2
  154                             ;JJN 1 1/20/12 -  end MTN014 982-02
  155                       ; Get Place  of Service  Code (EDI
  156                       S  EOF=$P($G (^CHMXCLA( CLAP,80)), U,7)                       ;Get  EDI/OCR Fl ag
  157                       S  POSTOB=$P (^CHMXCLE( CLEP,0),U, 4)          ;Get Plac e of Servi ce/TOB fie ld
  158                       S  POSTOBQ=$ P(^(0),U,5 )                                 ;Get PSOT OB Qualifi er
  159                       S  VFT=POSTO B_U_POSTOB Q                                 ;POSTOB a nd qualifi er
  160                       S  PA=PA_U_V FT,P2PA=P2 PA_U_VFT,S LA=SLA_U_V FT     ;Ad d POSTOB a nd qualifi er
  161                       S  RET=1 
  162                    }
  163                    ;
  164                             Q RET
  165                    ;                                                                                  ;
  166   GetAddr(CL P,N,X)         ;(clmx CL_Pointer ,Node,Xscr atch);Get  BILLING or  PAY-TO ad dress:      ;
  167                    I N= 0 Q $S($D( ^CHMXCLB(C LP,N),X):$ P(X,U,2,9) ,1:"")             ;P rovider ad dr
  168                    I N= 1 Q $S($D( ^CHMXCLB(C LP,N),X):$ P(X,U,2)_U _$P(X,U)_U _$P(X,U,3, 8),1:"") ; P2
  169                    I N= 60 N TIN S  TIN=$P(P2 PA,U) S:TI N="" TIN=$ P(PA,U)
  170                    I N= 60 Q $S($D (^CHMXCLE( CLP,N),X): TIN_U_$P(X ,U)_U_$P(X ,U,5,10),1 :"")    ;S LA
  171                    Q ""
  172   QUpdate(CH PDI)
  173                    I $D (^CHMIMG(" VEN-EDI",C HPDI)) S ^ CHMIMG("OC R-READY",C HPDI)="" K  ^CHMIMG(" VEN-EDI",C HPDI)
  174                    I $D (^CHMIMG(" VEN-OCR2", CHPDI)) S  ^CHMIMG("O CR2-READY" ,CHPDI)=""  K ^CHMIMG ("VEN-OCR2 ",CHPDI)
  175                    Q
  176   AVSERR  ;  Error trap  for the w eb sevice          
  177           ;N  Err
  178           I  $G(%objlas terror)]""  D Decompo seStatus^% apiOBJ(%ob jlasterror ,.Err)   ;  extract t he error m essage
  179           S: $G(CHAVSPD I)="" CHAV SPDI=$G(PD I)
  180           S  CHAVSERR=" Error on P DI: "_CHAV SPDI_" - " _$ZE
  181           S: $D(Err) CH AVSERR=CHA VSERR_" :  "_$G(Err(E rr))
  182                    Q 99   ; this i ndicates i ssues with  the web s ervice
  183                    
  184   VMAIL   ;  Mails out  WEB servic e error
  185                    K ^U TILITY($J, "AVS-ERR")
  186                    S ^U TILITY($J, "AVS-ERR", 1,1,0)="Au to Vendor  Web Servic e Error:"
  187                    S ^U TILITY($J, "AVS-ERR", 1,2,0)=" "
  188                    S ^U TILITY($J, "AVS-ERR", 1,3,0)=CHW EBERR
  189                    S XM DUZ=.5,XMS UB="Cache  - AVS Web  service ER ROR"
  190                    S XM TEXT="^UTI LITY($J,"" AVS-ERR"", 1,"
  191           S  XMY(" PII                   ")=""
  192           S  XMY(" PII                  ")=""     ; MTN01619 4-01 09-20 -12 jeh
  193           S  XMY(" PII                  ")=""     ; MTN01619 4-01 09-20 -12 jeh
  194                    S U= "^" D ^XMD
  195           Q
  196