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.
# | 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 |
Description | Between Files 1 and 2 |
|
---|---|---|
Text Blocks | Lines | |
Unchanged | 2 | 386 |
Changed | 1 | 6 |
Inserted | 0 | 0 |
Removed | 0 | 0 |
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 |
No regular expressions were active.
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 |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.